我正在Android 1.6中开发应用程序(并且不能使用2.0或更早版本)。
我在手机上添加了一个新联系人,如下所示:
ContentValues contentValues = new ContentValues();
contentValues.put(Contacts.People.NAME, name);
Uri contactUri = this.getContentResolver().insert(Contacts.People.CONTENT_URI, contentValues);
之后,我以同样的方式添加电话号码。它起作用,因为我能够使用以下代码查看新添加的联系人:
Intent intent = new Intent(Intent.ACTION_VIEW, contactUri);
this.startActivity(intent);
我的问题是,在添加和查看新联系人之后,我无法在“联系人”应用程序中看到它,除非我同步了所有联系人(我也搜索了联系人的姓名,发现它,但它不是添加在联系人列表中)。
如何以编程方式更新联系人,以便立即在“联系人”应用程序中添加新联系人?
谢谢!
答案 0 :(得分:3)
我找到答案:添加新联系人(插入)后,将其添加到myContactsGroup并使用Contacts.People.addToMyContactsGroup() method :
// get new contact id :
int contactId = Integer.valueOf(contactUri.toString().substring(contactUri.toString().lastIndexOf("/")+1));
// add the new contact to myContactsGroup to have it in Contacts Application :
Contacts.People.addToMyContactsGroup(this.getContentResolver(), contactId);