我正在尝试根据他们的信息选择联系人,它正在为电话号码工作(据我所知);但是当我尝试仅使用电子邮件选择联系人时,它会失败并出现以下错误:
Caused by: android.content.ActivityNotFoundException: No Activity found to handle Intent { act=android.intent.action.GET_CONTENT typ=vnd.android.cursor.item/email_v2 }
这是我的代码(或者更重要的部分):
Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
if( SMS )
intent.setType(ContactsContract.CommonDataKinds.Phone.CONTENT_ITEM_TYPE);
if( EMAIL )
intent.setType(ContactsContract.CommonDataKinds.Email.CONTENT_ITEM_TYPE);
startActivityForResult(intent, PICK_CONTACT);
答案 0 :(得分:5)
我认为你应该使用Intent intent = new Intent(Intent.ACTION_PICK, uri)
,其中uri是CommonDataKinds.Email.CONTENT_URI
或CommonDataKinds.Phone.CONTENT_URI
中的一个。这样,它只会显示带有电子邮件或电话的联系人。