Open wangming1993 opened 5 years ago
String rawContactId = cursor.getString(cursor .getColumnIndex(Phone.RAW_CONTACT_ID)); String contactId = cursor.getString(cursor .getColumnIndex(Phone.CONTACT_ID)); values.put(StructuredName.DISPLAY_NAME, displayName); String where = Data.CONTACT_ID + "=? AND " + ContactsContract.Data.MIMETYPE + "=?"; String[] selectionArgs = {contactId, StructuredName.CONTENT_ITEM_TYPE}; resolver.update(ContactsContract.Data.CONTENT_URI, values, where, selectionArgs); // 电话号码已存在,更新通讯录 c
ArrayList<ContentProviderOperation> ops = new ArrayList<ContentProviderOperation>(); ops.add(ContentProviderOperation .newUpdate(ContactsContract.Data.CONTENT_URI) .withSelection( ContactsContract.Data.CONTACT_ID + "=? AND " + ContactsContract.Data.MIMETYPE + "=?", new String[]{ contactId, ContactsContract.CommonDataKinds.StructuredName.CONTENT_ITEM_TYPE}) .withValue( ContactsContract.CommonDataKinds.StructuredName.DISPLAY_NAME, displayName).build()); try { resolver.applyBatch( ContactsContract.AUTHORITY, ops); } catch (Exception e) {
Uri rawContactUri = resolver.insert(RawContacts.CONTENT_URI, values); long rawContactId = ContentUris.parseId(rawContactUri); values.clear(); values.put(Data.RAW_CONTACT_ID, rawContactId); values.put(Data.MIMETYPE, StructuredName.CONTENT_ITEM_TYPE); values.put(StructuredName.GIVEN_NAME, displayName); // 向联系人URI添加联系人名字 resolver.insert(Data.CONTENT_URI, values); values.clear(); // 联系人的电话号码 values.put(Data.RAW_CONTACT_ID, rawContactId); values.put(Data.MIMETYPE, Phone.CONTENT_ITEM_TYPE); values.put(Phone.NUMBER, phone); // 电话类型 values.put(Phone.TYPE, Phone.TYPE_MOBILE); // 向联系人电话号码URI添加电话号码 resolver.insert(Data.CONTENT_URI, values); values.clear();