执行applyBatch时,权限com.android.contacts未找到异常

时间:2013-11-22 09:12:37

标签: android authority

我有这段代码:

context.getContentResolver().applyBatch(ContactsContract.AUTHORITY, ops);

在某些手机上(用户向我报告)会导致:

  

java.lang.IllegalArgumentException:未知权限   com.android.contacts

但是,已安装的软件包中列出了类似的权限:

  

触点; com.android.contacts

  

com.google.contacts.gal.provider

注意联系人;前缀 - 对我来说似乎不太好。 我使用此代码来获取它:

String message="";
for (android.content.pm.PackageInfo pack : context.getPackageManager().getInstalledPackages(PackageManager.GET_PROVIDERS)) {
 ProviderInfo[] providers = pack.providers;
 if (providers != null) {
  for (ProviderInfo provider : providers) {
  message=message+", "+provider.authority;
 }
 }
}

您认为故障转移到联系人是否合适;如果com.android.contacts失败,则com.android.contact?

1 个答案:

答案 0 :(得分:1)

联系人提供商在其权限中列出“contacts; com.android.contacts”。此列表应由内容解析程序解析,您不需要将此字符串用作权限。

可能您需要了解有关此问题的手机的更多信息。