1. 程式人生 > >android插入聯絡人

android插入聯絡人

public void addContact(String name, String phoneNumber) {
        // 建立一個空的ContentValues
        ContentValues values = new ContentValues();

        // 向RawContacts.CONTENT_URI空值插入,
        // 先獲取Android系統返回的rawContactId
        // 後面要基於此id插入值
        Uri rawContactUri = getContentResolver().insert(ContactsContract.RawContacts.CONTENT_URI, values);
        long rawContactId = ContentUris.parseId(rawContactUri);
        values.clear();

        values.put(ContactsContract.RawContacts.Data.RAW_CONTACT_ID, rawContactId);
        // 內容型別
        values.put(ContactsContract.RawContacts.Data.MIMETYPE, ContactsContract.CommonDataKinds.StructuredName.CONTENT_ITEM_TYPE);
        // 聯絡人名字
        values.put(ContactsContract.CommonDataKinds.StructuredName.GIVEN_NAME, name);
        // 向聯絡人URI新增聯絡人名字
        getContentResolver().insert(ContactsContract.Data.CONTENT_URI, values);
        values.clear();

        values.put(ContactsContract.RawContacts.Data.RAW_CONTACT_ID, rawContactId);
        values.put(ContactsContract.RawContacts.Data.MIMETYPE, ContactsContract.CommonDataKinds.Phone.CONTENT_ITEM_TYPE);
        // 聯絡人的電話號碼
        values.put(ContactsContract.CommonDataKinds.Phone.NUMBER, phoneNumber);
        // 電話型別
        values.put(ContactsContract.CommonDataKinds.Phone.TYPE, ContactsContract.CommonDataKinds.Phone.TYPE_MOBILE);
        // 向聯絡人電話號碼URI新增電話號碼
        getContentResolver().insert(ContactsContract.Data.CONTENT_URI, values);
        values.clear();

        values.put(ContactsContract.RawContacts.Data.RAW_CONTACT_ID, rawContactId);

    }
需要新增許可權:(注意6.0以上的問題)
<uses-permission android:name="android.permission.READ_CONTACTS" />
    <uses-permission android:name="android.permission.WRITE_CONTACTS" />
原文:http://blog.csdn.net/zhangphil/article/details/50633727