Android:从插入的联系人中获取数据

时间:2014-03-18 03:43:53

标签: android android-intent android-contacts

使用以下代码行:

Intent addContact = new Intent(Intent.ACTION_INSERT, ContactsContract.Contacts.CONTENT_URI);
addContact.putExtra(ContactsContract.Intents.Insert.PHONE,"09876543210");
startActivity(addContact);

我能够使用默认联系人号码启动Android的插入联系活动。

现在,使用上面定义的意图,我如何构建startActivityForResult以便我可以获得输入的联系方式(名字,姓氏等)?

1 个答案:

答案 0 :(得分:2)

为什么要为结果启动活动..?从您的问题我得到你想要创建应用程序,该应用程序从用户获取联系人详细信息并将其作为新闻联系人添加到联系人列表。您可以使用以下代码实现此目的......

Intent intent = new Intent(Intents.Insert.ACTION);
intent.setType(ContactsContract.RawContacts.CONTENT_TYPE);
private EditText mEmailAddress = (EditText) findViewById(R.id.email);
private EditText mPhoneNumber = (EditText) findViewById(R.id.phone);

 intent.putExtra(Intents.Insert.EMAIL, mEmailAddress.getText())
.putExtra(Intents.Insert.EMAIL_TYPE, CommonDataKinds.Email.TYPE_WORK)
.putExtra(Intents.Insert.PHONE, mPhoneNumber.getText())
.putExtra(Intents.Insert.PHONE_TYPE, Phone.TYPE_WORK);

创建Intent后,通过调用startActivity()发送它。

startActivity(intent);

参见this linkthis link以获得更多选择。