Android 為同一個(gè)聯(lián)系人添加多個(gè)號(hào)碼的程序?qū)崿F(xiàn)
? ? 一般來(lái)說(shuō),實(shí)現(xiàn)的都是添加一個(gè)聯(lián)系人和對(duì)應(yīng)的號(hào)碼,但如果想為一個(gè)聯(lián)系人添加多個(gè)號(hào)碼怎么辦,我找了半天都沒(méi)有解決方法,最后自己看別人的通訊錄得到啟發(fā),直接上代碼。大家互相幫助才能進(jìn)步。
//往數(shù)據(jù)庫(kù)中新增聯(lián)系人
? ? public void AddContact(String name, String numberFirst,String numberSecond)
? ? {
? ? //創(chuàng)建一個(gè)空的ContentValues
? ? ? ? ContentValues values = new ContentValues();
? ? ? ? //首先向RawContacts.CONTENT_URI執(zhí)行一個(gè)空值插入,目的是獲取系統(tǒng)返回的rawContactId
? ? ? ? Uri rawContactUri = getContentResolver().insert(RawContacts.CONTENT_URI, values);
? ? ? ? long rawContactId = ContentUris.parseId(rawContactUri);
? ? ? ? //往data表插入姓名數(shù)據(jù)
? ? ? ? values.clear();
? ? ? ? values.put(Data.RAW_CONTACT_ID, rawContactId);
? ? ? ? values.put(Data.MIMETYPE, StructuredName.CONTENT_ITEM_TYPE);//內(nèi)容類(lèi)型
? ? ? ? values.put(StructuredName.GIVEN_NAME, name);//設(shè)置聯(lián)系人名字 ?
? ? ? ? getContentResolver().insert(ContactsContract.Data.CONTENT_URI, values);//向聯(lián)系人URI添加聯(lián)系人名字
? ? ? ? //往data表插入電話數(shù)據(jù)
? ? ? ? values.clear();
? ? ? ? values.put(Data.RAW_CONTACT_ID, rawContactId);
? ? ? ? values.put(Data.MIMETYPE, Phone.CONTENT_ITEM_TYPE);
? ? ? ? values.put(Phone.NUMBER, numberFirst);
? ? ? ? values.put(Phone.TYPE, Phone.TYPE_MOBILE);//插入手機(jī)號(hào)碼
? ? ? ? getContentResolver().insert(ContactsContract.Data.CONTENT_URI, values);
? ? ? ? //往data表插入其他電話數(shù)據(jù)
? ? ? ? values.clear();
? ? ? ? values.put(Data.RAW_CONTACT_ID, rawContactId);
? ? ? ? values.put(Data.MIMETYPE, Phone.CONTENT_ITEM_TYPE);
? ? ? ? values.put(Phone.NUMBER, numberSecond);
? ? ? ? values.put(Phone.TYPE, Phone.TYPE_OTHER);//插入除了其他號(hào)碼
? ? ? ? getContentResolver().insert(ContactsContract.Data.CONTENT_URI, values);
? ? }