android - 使用标准 Activity 创建预填充联系人

标签 android

在我的应用程序中,我尝试通过调用标准创建/编辑联系人 Activity 来创建联系人。

我找到了如何让它工作,但不是我喜欢的方式。

现在我设法调用标准的创建联系人 Activity ,具有以下额外的 Intent :

Intent i = new Intent(ContactsContract.Intents.SHOW_OR_CREATE_CONTACT, Uri.parse(String.format("tel: %s", data.getPhone())));
i.addCategory(Intent.CATEGORY_DEFAULT);
i.putExtra(ContactsContract.Intents.EXTRA_FORCE_CREATE, true);
i.putExtra(ContactsContract.Intents.Insert.NAME, data.getName());
i.putExtra(ContactsContract.Intents.Insert.PHONE_TYPE, ContactsContract.CommonDataKinds.StructuredPostal.TYPE_WORK);
i.putExtra(ContactsContract.Intents.Insert.PHONE, org.getPhone());
i.putExtra(ContactsContract.Intents.Insert.POSTAL_TYPE, ContactsContract.CommonDataKinds.StructuredPostal.TYPE_WORK);
i.putExtra(ContactsContract.Intents.Insert.POSTAL, org.getAddress() + " " + org.getZipCode());
i.putExtra(ContactsContract.Intents.Insert.EMAIL_TYPE, ContactsContract.CommonDataKinds.StructuredPostal.TYPE_WORK);
i.putExtra(ContactsContract.Intents.Insert.EMAIL, org.getEmail());
startActivity(i);

除了地址字段外,所有数据都已正确填写,如下图所示:http://img689.imageshack.us/img689/1073/capturevvm.png

我想在单独的字段中指定地址的每个部分。有没有办法用 Intent 来做到这一点?

我试过了,但是没用。

i.putExtra(ContactsContract.CommonDataKinds.StructuredPostal.CONTENT_ITEM_TYPE, ContactsContract.CommonDataKinds.StructuredPostal.TYPE_WORK);
i.putExtra(ContactsContract.CommonDataKinds.StructuredPostal.STREET, "toto");
i.putExtra(ContactsContract.CommonDataKinds.StructuredPostal.CITY, "paris");

有什么想法吗?

最佳答案

contactIntent.putExtra(ContactsContract.Intents.Insert.POSTAL, "2 rue de Romme, 75000 Paris");
contactIntent.putExtra(ContactsContract.Intents.Insert.POSTAL_TYPE, ContactsContract.CommonDataKinds.StructuredPostal.TYPE_WORK);

关于android - 使用标准 Activity 创建预填充联系人,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4748397/

相关文章:

java - 空指针异常 : when trying to get user location from Facebook

java - 在 fragment 中使用上下文

android - 使用 Google Drive API 时出现无限 "Choose an account"循环

android - MediaCodec 编码忽略了我的 BUFFER_FLAG_SYNC_FRAME 标志

Android - 开机动画,加载开机动画前的静态图片

android - Dagger2 错误 : Cannot provide without @Inject constructor

android - 使用 SQLite 而不是 File 有什么优势?

android - Gradle 同步警告 - list 合并失败 - play-services-wearable

java - 在 SQLite 中使用 Between 不返回每周数据

android - 没有 TwitterLoginButton 的 Twitter 登录