如何以编程方式将邮件地址添加到android中的联系人?

时间:2012-01-28 13:57:14

标签: android android-contacts

我正在开发应用程序,它将联系信息添加到Android联系人列表.to如何以编程方式将邮件地址添加到android中的联系人?

2 个答案:

答案 0 :(得分:1)

已经有一段时间了,但是也许其他人仍然对此感兴趣。如何添加地址信息的联系人:

import static android.provider.ContactsContract.Data;
import static android.provider.ContactsContract.Intents.Insert;

private void createContactIntent() {
    Intent contactIntent = new Intent(ContactsContract.Intents.Insert.ACTION, ContactsContract.Contacts.CONTENT_URI);
    contactIntent.setType(ContactsContract.Contacts.CONTENT_TYPE);
    contactIntent.putExtra(Insert.NAME, "Sergio Mendes");
    contactIntent.putExtra(Insert.COMPANY, "Company One");
    contactIntent.putExtra(Insert.POSTAL, "Street 1, 9999 City, Country");
    contactIntent.putExtra(Data.IS_SUPER_PRIMARY, 1);
    startActivity(contactIntent);
}

请注意,像三星S5 / A5这样的设备会将整个地址放入" street"领域。如果您对此有任何优化,请告诉我。

答案 1 :(得分:0)

邮政地址与DATA表格中的所有其他信息一样存储

MIMEtype == ContactsContract.CommonDataKinds.StructuredPostal.CONTENT_ITEM_TYPE

请谷歌ContactsContract.CommonDataKinds.StructuredPostal查找所有信息。

如果您需要知道如何编辑联系人,我建议您查看Android SDK中的SampleSyncAdapter。它是一个同步适配器,因此您不需要研究所有内容,但ContactManager中的updateContact是一个很好的开始。