Android 如何检查设备是否支持用户';有没有联系人?

Android 如何检查设备是否支持用户';有没有联系人?,android,user-permissions,Android,User Permissions,我使用了和 在我的应用程序清单中。并读取用户的联系人 Intent intent = new Intent(Intent.ACTION_PICK,Contacts.CONTENT_URI); startActivityForResult(intent,1000); READ\u CONTACTS权限是否可以过滤Google Play中的应用程序 如果我们尝试访问没有联系人的联系人会发生什么情况。例如:一些平板电脑没有联系人和电话功能。这种情况下会发生什么?这个代码会崩溃吗 如果代码将兑现,那么

我使用了

在我的应用程序清单中。并读取用户的联系人

Intent intent = new Intent(Intent.ACTION_PICK,Contacts.CONTENT_URI);
startActivityForResult(intent,1000);
READ\u CONTACTS
权限是否可以过滤Google Play中的应用程序

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

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


提前感谢

您需要检查是否有活动来处理此意图:

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
}

该应用程序是否与没有联系人应用程序的设备兼容?flx我也有疑问。此外,我的应用程序中有两个广播接收器,用于监听传入和传出呼叫状态,它们在清单中指定,其中一个通过代码启动。因此,在从代码启动接收器之前,我使用并检查了getPackageManager().hasSystemFeature(PackageManager.FEATURE_TELEPHONY)。您需要像这样检查每次调用的API。仅此而已。如果您需要确定,请在没有联系人应用程序的设备上测试您的应用程序。但你可以相信我,并接受我的答案。请让我总结一下,这两个变化可以让我的应用程序在Android market中的所有设备上都可见,即使它们没有电话和联系人功能,对吗?