Я пытаюсь изменить отображаемое имя конкретного контакта, но независимо от того, что я делаю, отображаемое имя не редактируется. Я просмотрел все связанные вопросы, но я не нашел решения по этой проблеме.Отображаемое имя контакта не отредактировано в Android
ArrayList<ContentProviderOperation> ops = new ArrayList<ContentProviderOperation>();
ops.add(ContentProviderOperation.newUpdate(ContactsContract.Data.CONTENT_URI)
.withSelection(ContactsContract.CommonDataKinds.Phone.CONTACT_ID + "=? AND " +
ContactsContract.CommonDataKinds.Phone.MIMETYPE + "='" +
ContactsContract.CommonDataKinds.Phone.CONTENT_ITEM_TYPE + "' AND "+ContactsContract.CommonDataKinds.Phone.RAW_CONTACT_ID +"=?",
new String[]{id,raw})
//.withValue(ContactsContract.CommonDataKinds.StructuredName.DISPLAY_NAME, "B "+name)
//.withValue(ContactsContract.CommonDataKinds.Phone.PHONETIC_NAME, "B "+name)
//.withValue(ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME_PRIMARY, "B "+name)
//.withValue(ContactsContract.Data.DISPLAY_NAME, "B "+name)
.withValue(ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME, "B "+name)
.build());
try {
ContentProviderResult[] result =HomeActivity.this.getContentResolver().applyBatch(ContactsContract.AUTHORITY, ops);
Log.e("Edit Result",result.toString());
} catch (RemoteException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
Я пробовал все опции, которые написаны в комментариях, но с ContactsContract.CommonDataKinds.StructuredName.DISPLAY_NAME
. Он изменяет контактный номер вместо имени контакта. Я пытаюсь сделать это в течение последних 3 дней, но не добился успеха. Скажите, пожалуйста, что я делаю неправильно или покажу мне правильный способ редактирования имени контакта.