一插 获取 contact id ContactsContract.RawContacts.CONTENT_URI. 二插 设置名字 ContactsContract.Data.CONTENT_URI 三插 设置号码 ContactsContract.Data.CONTENT_URI
只添加一个联系人
val a = ContentValues().apply { this.put(ContactsContract.RawContacts.ACCOUNT_TYPE,"TZS") this.put(ContactsContract.RawContacts.ACCOUNT_NAME, "") } context.contentResolver.insert(ContactsContract.RawContacts.CONTENT_URI,a) val b = ContentValues().apply { this.put(ContactsContract.Data.RAW_CONTACT_ID, i) this.put(ContactsContract.Data.MIMETYPE, ContactsContract.CommonDataKinds.StructuredName.CONTENT_ITEM_TYPE) this.put(ContactsContract.CommonDataKinds.StructuredName.DISPLAY_NAME, myContactList[i].first) } context.contentResolver.insert(ContactsContract.Data.CONTENT_URI,b) val c = ContentValues().apply { this.put(ContactsContract.Data.RAW_CONTACT_ID, i) this.put(ContactsContract.Data.MIMETYPE, ContactsContract.CommonDataKinds.Phone.CONTENT_ITEM_TYPE) this.put(ContactsContract.CommonDataKinds.Phone.NUMBER, myContactList[i].second) this.put(ContactsContract.CommonDataKinds.Phone.TYPE, ContactsContract.CommonDataKinds.Phone.TYPE_MOBILE) } context.contentResolver.insert(ContactsContract.Data.CONTENT_URI,c)批量插入联系人
val size = myContactList.size val contentValuesRaw = arrayOfNulls<ContentValues>(size) val contentValuesPhone = arrayOfNulls<ContentValues>(size) val contentValuesName = arrayOfNulls<ContentValues>(size) contentValuesRaw[i] = ContentValues().apply { this.put(ContactsContract.RawContacts.ACCOUNT_TYPE,"TZS") this.put(ContactsContract.RawContacts.ACCOUNT_NAME, "") } contentValuesName[i] = ContentValues().apply { this.put(ContactsContract.Data.RAW_CONTACT_ID, i) this.put(ContactsContract.Data.MIMETYPE, ContactsContract.CommonDataKinds.StructuredName.CONTENT_ITEM_TYPE) this.put(ContactsContract.CommonDataKinds.StructuredName.DISPLAY_NAME, myContactList[i].first) } contentValuesPhone[i] = ContentValues().apply { this.put(ContactsContract.Data.RAW_CONTACT_ID, i) this.put(ContactsContract.Data.MIMETYPE, ContactsContract.CommonDataKinds.Phone.CONTENT_ITEM_TYPE) this.put(ContactsContract.CommonDataKinds.Phone.NUMBER, myContactList[i].second) this.put(ContactsContract.CommonDataKinds.Phone.TYPE, ContactsContract.CommonDataKinds.Phone.TYPE_MOBILE) } // 依次插入 context.contentResolver.bulkInsert(ContactsContract.RawContacts.CONTENT_URI, contentValuesRaw) context.contentResolver.bulkInsert(ContactsContract.Data.CONTENT_URI, contentValuesName) context.contentResolver.bulkInsert(ContactsContract.Data.CONTENT_URI, contentValuesPhone)