2017-02-20 2 views
0

Я пытаюсь обновить название организации, в одном контакте, но она не работает для меня, я использую следующий кодОбновления название организации в андроиде контактов программно

ops.add(ContentProviderOperation.newUpdate(ContactsContract.Data.CONTENT_URI) 
    .withValue(ContactsContract.Data.MIMETYPE, ContactsContract.CommonDataKinds.Organization.CONTENT_ITEM_TYPE) 
    .withValue(ContactsContract.CommonDataKinds.Organization.COMPANY,company) 
    .build()); 

Пожалуйста, помогите мне, спасибо заранее.

ответ

1

То, что вы написали, не говоря уже о , которые контакт, который вы хотите обновить.

Contact построен из одного или нескольких RawContacts, вам нужно пройти ContentProviderOperation в RawContact._ID, который вы хотите обновить.

Каждый RawContact построен из одного из следующих Data записей, если у вас есть конкретный Data._ID, который вы хотите обновить, это будет еще лучше.

Если у вас есть только RawContact._ID, и это rawContactId, то это должно обновить:

String selection = Data.RAW_CONTACT_ID + "=? AND " + Data.MIMETYPE + "=?"; 
String[] selectionArgs = new String[] { rawContactId, CommonDataKinds.Organization.CONTENT_ITEM_TYPE }; 
opt.add(ContentProviderOperation.newUpdate(Data.CONTENT_URI) 
     .withSelection(selection, selectionArgs) 
     .withValue(ContactsContract.CommonDataKinds.Organization.COMPANY, company) 
     .build()); 

Это говорит БД для обновления строки данных (ы), которые принадлежат к rawContactId, а также типа Organization

+0

Спасибо, чувак, ты спас свой день. –

0
String orgWhere = ContactsContract.Data.CONTACT_ID + " = ? AND " + ContactsContract.Data.MIMETYPE + " = ?"; 
String[] orgWhereParams = new String[]{String.valueOf(id), 
    ContactsContract.CommonDataKinds.Organization.CONTENT_ITEM_TYPE}; 
operationList 
.add(ContentProviderOperation 
     .newUpdate(ContactsContract.Data.CONTENT_URI) 
     .withSelection(orgWhere, orgWhereParams) 
     .withValue(
       ContactsContract.CommonDataKinds.Organization.DATA, 
       guCon.getCompany()).build()); 
Смежные вопросы