从联系人列表中选择联系人并 select 该联系人的特定电子邮件

Pick contact from Contacts list and select a specific email for that contact

我知道如果我创建这样的 Intent:

val contactPickerIntent = Intent(Intent.ACTION_PICK, ContactsContract.Contacts.CONTENT_URI)
        startActivityForResult(contactPickerIntent, request_code)

我将能够从我的联系人列表中选择一个联系人。

如果我这样设置意图:

val contactPickerIntent = Intent(Intent.ACTION_VIEW, ContactsContract.Contacts.CONTENT_URI)

我将能够进入 selected 联系方式(从联系人应用程序中),但我无法从中选择任何内容。

问题是我需要打开联系人的详细信息和 select 其中一个电子邮件地址,以防他有多个,然后选择它。

有办法吗?

您可以将选择器从联系人选择器更改为电子邮件选择器

Intent contacts = new Intent(Intent.ACTION_PICK, CommonDataKinds.Email.CONTENT_URI); // Note the Email!
startActivityForResult(contacts, PICK_CONTACTS);

参见:https://developer.android.com/guide/components/intents-common#Contacts