相关疑难解决方法(0)

插入新的联系意图

对于我的某个应用,我需要用户选择其中一个现有联系人或创建一个新联系人.使用以下代码很容易选择一个:

i = new Intent(Intent.ACTION_PICK, Contacts.CONTENT_URI);
startActivityForResult(i, PICK_CONTACT_REQUEST );
Run Code Online (Sandbox Code Playgroud)

现在我想创建一个新的联系人.我试图使用该代码,但它不会触发活动结果:

i = new Intent(Intent.ACTION_INSERT);
i.setType(Contacts.CONTENT_TYPE);
startActivityForResult(i, PICK_CONTACT_REQUEST);
Run Code Online (Sandbox Code Playgroud)

上面的代码将启动联系人添加表单.然后,当我验证它时,它只是要求我打开联系人列表,并且永远不会触发onActivityResult方法.

你能帮我把它搞定吗?

我在某些电路板上看到这是不可能的,我必须创建自己的联系人添加表格.你能证实吗?

编辑:问题解决了.检查我的答案.

android contacts android-contacts

21
推荐指数
3
解决办法
2万
查看次数

在Android中使用ContactsContract插入联系人

我正在尝试直接向Android 2.2联系人添加新联系人.

//this code doesn't work    
ContentValues cv=new ContentValues();
cv.put(ContactsContract.Contacts.DISPLAY_NAME, "TESTEST");
Uri u= getContentResolver().insert(ContactsContract.Contacts.CONTENT_URI, cv);
Run Code Online (Sandbox Code Playgroud)

给我错误"自动创建聚合联系人".我究竟做错了什么?

这会调用Android的添加联系人表单:

//this code works but it's not ideal
Intent i = new Intent(Intent.ACTION_INSERT_OR_EDIT);
i.setType(Contacts.CONTENT_ITEM_TYPE);
i.putExtra(Insert.NAME, "TESTTEST");
i.putExtra(Insert.PHONE, "209384");
startActivity(i);
Run Code Online (Sandbox Code Playgroud)

我无法弄清楚如何发送它的名字和姓氏 - 它只是一个'名字',它放在名字框中.此外,我想将邮政编码分为街道,城市,州和邮政编码,现在这些都被放入街道邮箱.

android contacts android-intent contactscontract android-activity

15
推荐指数
2
解决办法
3万
查看次数