0

我需要在创建新联系人之前对其进行显示/交互,并且我需要一种简单的方法将其添加到电话联系人中。

这是我使用的代码:

String contactPhone = "33333333";   
Uri contactUri = Uri.parse(String.format("tel: %s", contactPhone));
Intent addContactIntent = new Intent(
                ContactsContract.Intents.SHOW_OR_CREATE_CONTACT, contactUri); 
addContactIntent.putExtra(ContactsContract.Intents.Insert.NAME, "FirstName" );
addContactIntent.putExtra(ContactsContract.Intents.Insert.COMPANY,"CompanyName");
addContactIntent.putExtra(ContactsContract.Intents.Insert.PHONE,contactPhone);
addContactIntent.putExtra(ContactsContract.Intents.Insert.EMAIL,"contact@email.com");
startActivity(addContactIntent);

这就是结果。问题是 Intent 只显示电话而不是添加的所有信息。

在此处输入图像描述

4

2 回答 2

1

ContactsContract.Intents.Insert.ACTION 如果您想在创建之前进行交互:

Intent intent = new Intent(ContactsContract.Intents.Insert.ACTION,ContactsContract.Contacts.CONTENT_URI);
intent.putExtra(ContactsContract.Intents.Insert.NAME, getName());
intent.putExtra(ContactsContract.Intents.Insert.COMPANY, getCompany());
intent.putExtra(ContactsContract.Intents.Insert.EMAIL, getEmail());
intent.putExtra(ContactsContract.Intents.Insert.PHONE, getPhone());
intent.putExtra(ContactsContract.Intents.Insert.POSTAL, getAddress());
startActivity(intent);

这工作得很好。我希望这能帮到您。

于 2013-01-11T16:24:34.563 回答
0

该站点(http://wiresareobsolete.com/2011/10/simplifying-interaction-with-contacts/)显示并给出示例)SHOW_OR_CREATE_CONTACT 只能触发“tel”或“mailto”/email 进行搜索。

于 2016-01-03T02:09:24.450 回答