2012-10-17 44 views
0

我使用 getContentResolver()成功更新了聯繫人中的現有NOTE。applyBatch(ContactsContract.AUTHORITY,ops);如何在ANDROID中添加一個現有CONTACT的新NOTE

此方法不適用於添加新的NOTE .. 如何在ANDROID中添加現有CONTACT的新NOTE?

+0

你必須插入note元素,而不是更新它 – njzk2

回答

1
public void testInsert() 
{ 
    ContentValues values = new ContentValues(); 
    // insert a empty note into RawContacts.CONTENT_URI, and get the rawContactId 
    Uri rawContactUri = this.getContext().getContentResolver().insert(RawContacts.CONTENT_URI, values); 
    // get id 
    long rawContactId = ContentUris.parseId(rawContactUri); 
    // insert name data 
    values.clear(); 
    values.put(Data.RAW_CONTACT_ID, rawContactId); // id 
    values.put(Data.MIMETYPE, StructuredName.CONTENT_ITEM_TYPE);// MIMETYPE 
    values.put(StructuredName.GIVEN_NAME, "zetsin");// first name 
    this.getContext().getContentResolver().insert(android.provider.ContactsContract.Data.CONTENT_URI, values); 
    // insert phone 
    values.clear(); 
    values.put(Data.RAW_CONTACT_ID, rawContactId); 
    values.put(Data.MIMETYPE, Phone.CONTENT_ITEM_TYPE); 
    values.put(Phone.NUMBER, "123456"); 
    values.put(Phone.TYPE, Phone.TYPE_MOBILE); 
    this.getContext().getContentResolver().insert(android.provider.ContactsContract.Data.CONTENT_URI, values); 
    // insert email 
    values.clear(); 
    values.put(Data.RAW_CONTACT_ID, rawContactId); 
    values.put(Data.MIMETYPE, Email.CONTENT_ITEM_TYPE); 
    values.put(Email.DATA, "[email protected]"); 
    values.put(Email.TYPE, Email.TYPE_WORK); 
    this.getContext().getContentResolver().insert(android.provider.ContactsContract.Data.CONTENT_URI, values); 
} 
+0

謝謝Aestin ...它的工作正常。 – Gaurav

相關問題