一、存储
public void contactsInsert(String contactsname,String contactnum ){
final String name= contactsname;
final String num = contactnum;
RTLogUtils.e(TAG,"name = "+name +"num= "+num);
if(serviceContext!=null){
Uri uri = Uri.parse("content://com.android.contacts/raw_contacts");
ContentValues values = new ContentValues();
Uri rawContactUri = serviceContext.getContentResolver().insert(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, name);
serviceContext.getContentResolver().insert(
android.provider.ContactsContract.Data.CONTENT_URI, values);
values.clear();
values.put(android.provider.ContactsContract.Contacts.Data.RAW_CONTACT_ID, rawContactId);
values.put(Data.MIMETYPE, Phone.CONTENT_ITEM_TYPE);
values.put(Phone.NUMBER, num);
values.put(Phone.TYPE, Phone.TYPE_MOBILE);
serviceContext.getContentResolver().insert(
android.provider.ContactsContract.Data.CONTENT_URI, values);
}
}
二、获取
public void GetContact() {
ContentResolver contentResolver = this.getContentResolver();
Uri uri = Uri.parse("content://com.android.contacts/contacts");
Cursor cursor = contentResolver.query(uri, null, null, null, null);
Cursor phones = null;
Cursor emails = null;
if (cursor != null) {
Contact con;
List<Contact> list = new ArrayList<Contact>();
while (cursor.moveToNext()) {
con = new Contact();
String contactId = cursor.getString(cursor
.getColumnIndex(ContactsContract.Contacts._ID));
String name = cursor
.getString(cursor
.getColumnIndex(ContactsContract.Contacts.DISPLAY_NAME));
con.setName(name);
phones = contentResolver.query(
ContactsContract.CommonDataKinds.Phone.CONTENT_URI,
null, ContactsContract.CommonDataKinds.Phone.CONTACT_ID
+ " = " + contactId, null, null);
while (phones.moveToNext()) {
String phone = phones.getString(phones
.getColumnIndex("data1"));
con.setNumber(phone);
}
phones.close();
list.add(con);
}
cursor.close();
TXZCallManager.getInstance().syncContacts(list);
}
}