更新联系人的拼音名称 - android API级别19(4.4.3)
问题描述:
我正在尝试将语音名称添加到特定联系人。更新联系人的拼音名称 - android API级别19(4.4.3)
我做了以下内容:
ArrayList<android.content.ContentProviderOperation> ops = new ArrayList<android.content.ContentProviderOperation>();
ops.add(ContentProviderOperation.newUpdate(Data.CONTENT_URI)
.withSelection(Data._ID + "=?", new String[]{String.valueOf(ContactId)})
.withValue(CommonDataKinds.StructuredName.PHONETIC_GIVEN_NAME, "mois")
.build());
getContentResolver().applyBatch(ContactsContract.AUTHORITY, ops);
不过虽然我没有错误 - 接触不会被更新。
任何想法?
答
好的,所以如果权限设置正确,更新其他东西的作品,我认为这个问题在选择(联系与raw_contact与数据)是错误的ID。
尝试:
withSelection(Data.RAW_CONTACT_ID + "=?", new String[]{String.valueOf(RawContactId)})
愚蠢的问题,但只是为了排除:权限? – snowdragon
我拥有所有权限。为什么愚蠢? – MoShe
您是否尝试通过ContactId查询并看到您获得有效的光标? 'Cursor c = getContentResolver()。查询(Data.CONTENT_URI, new String [] {Data._ID,Phone.NUMBER,Phone.TYPE,Phone.LABEL}, Data.CONTACT_ID +“=?”+“AND” + Data.MIMETYPE +“='”+ Phone.CONTENT_ITEM_TYPE +“'”, new String [] {String.valueOf(contactId)},null);' – snowdragon