1

<uses-permission android:name="android.permission.READ_CONTACTS" />我用过

<uses-feature android:name="android.hardware.telephony" android:required="false" />在我的应用程序清单中。并读取用户的联系人

Intent intent = new Intent(Intent.ACTION_PICK,Contacts.CONTENT_URI);
startActivityForResult(intent,1000);

权限是否READ_CONTACTS可以过滤 Google Play 中的应用程序?

如果我们在没有联系人的情况下尝试访问联系人会发生什么。例如:某些平板电脑没有联系人和电话功能。在这种情况下会发生什么?这段代码会崩溃吗?

如果代码会兑现,那么如何检查设备是否支持联系人?

提前致谢

4

1 回答 1

2

您需要检查是否有活动来处理 Intent:

Context context = /* whatever suits your case: this/getActivity/.. */
Intent intent = new Intent(Intent.ACTION_PICK,Contacts.CONTENT_URI);
if (intent.resolveActivity(context.getPackageManager()) != null) {
     startActivityForResult(intent,1000);
} else {
     // no Contacts app available
}
于 2013-09-03T06:18:50.930 回答