Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
android联系人支持的mimetype列表_Android_Database_Android Contacts - Fatal编程技术网

android联系人支持的mimetype列表

android联系人支持的mimetype列表,android,database,android-contacts,Android,Database,Android Contacts,我正在准备一个联系人应用程序,在那里我需要获得android联系人支持的模拟类型列表。 例如:有些设备支持SIP地址,有些设备支持。 所以我想在支持SIP地址时插入它,然后如何检查mimetype是否受支持。 我在com.android.providers.contacts包中的android联系人数据库中找到了mimetypes表。 如何访问contacts2.db数据库中的mimetypes表 请帮忙。 感谢您的帮助。如果您想检查设备是否支持mimetype,请执行以下操作 Uri enti

我正在准备一个联系人应用程序,在那里我需要获得android联系人支持的模拟类型列表。 例如:有些设备支持
SIP地址
,有些设备支持。 所以我想在支持SIP地址时插入它,然后如何检查mimetype是否受支持。 我在
com.android.providers.contacts
包中的android联系人数据库中找到了mimetypes表。 如何访问
contacts2.d
b数据库中的mimetypes表

请帮忙。
感谢您的帮助。

如果您想检查设备是否支持mimetype,请执行以下操作

Uri entityUri =
  Uri.withAppendedPath(
         ContentUris.withAppendedId(RawContacts.CONTENT_URI, rawContactId), Entity.CONTENT_DIRECTORY);

Cursor c =
  getContentResolver().query(
    entityUri,
    new String[] {
      RawContacts.SOURCE_ID, Entity.DATA_ID, Entity.MIMETYPE, Entity.DATA1 },
    null, null, null);

try {
     while (c.moveToNext()) {
         String sourceId = c.getString(0);
         if (!c.isNull(1)) {
             String mimeType = c.getString(2);
             String data = c.getString(3);
                PackageManager packageManager = context.getPackageManager();
                Intent testIntent = new Intent(Intent.ACTION_VIEW);
                testIntent.setType(mimeType );
                if (packageManager.queryIntentActivities(testIntent, PackageManager.MATCH_DEFAULT_ONLY).size() > 0) {
                      // do something - it is supported
                  } else {
                  return false;
                }
         }
     }
} finally {
     c.close();
}

抱歉,我不希望联系人与mimetype关联。我想要设备@abhi支持的mimetype列表下面的答案似乎不是解决问题,你找到了原始问题的解决方案吗?即读取mimetype?@Tito这可能是由于Android API的更改。以前我会做相应的更改和更新。问题似乎是询问一个MIMEType列表我不知道哪个变量保存该列表,但我没有以前存储的任何联系人,因此如何添加RAW ContactId。因此,您没有联系人,但是你想知道Android联系人支持的模拟类型吗?访问联系人数据库?我很困惑。然而,如果您有mimetype列表,并且您想知道是否有处理程序
PackageManager-PackageManager=context.getPackageManager();Intent testIntent=新的意图(Intent.ACTION\u视图);testIntent.setType(mimeType);if(packageManager.QueryInputActivities(testIntent,packageManager.MATCH_DEFAULT_ONLY).size()>0){//执行某些操作-支持它}否则{返回false;}
很抱歉造成混淆。但是由于我没有存储任何mimetypes,所以我想从contacts db的mimetypes表中检索它。我该怎么做?使用列出所有联系人-并为每个联系人找出关联的MimeType,如
String MimeType=c.getString(2)