上一篇文章講了如何獲取所有聯(lián)系人,這篇文章就講下怎么保存聯(lián)系人數(shù)據(jù)到本機(jī)通訊錄。這里我就假設(shè)你已經(jīng)拿到了要保存的聯(lián)系人數(shù)據(jù)。
成都網(wǎng)站制作、成都網(wǎng)站建設(shè)的關(guān)注點(diǎn)不是能為您做些什么網(wǎng)站,而是怎么做網(wǎng)站,有沒有做好網(wǎng)站,給創(chuàng)新互聯(lián)一個(gè)展示的機(jī)會(huì)來證明自己,這并不會(huì)花費(fèi)您太多時(shí)間,或許會(huì)給您帶來新的靈感和驚喜。面向用戶友好,注重用戶體驗(yàn),一切以用戶為中心。
因?yàn)槭且粋€(gè)工具類,所以我這里就只給一個(gè)方法了,也是很簡(jiǎn)單,但是寫的沒有讀取聯(lián)系人的數(shù)據(jù)那么多,要保存更多其實(shí)看下如何讀取的就會(huì)了。
直接上源碼:
/** * 添加聯(lián)系人到本機(jī) * * @param context * @param contact * @return */ public static boolean addContact(Context context, ContactEntity contact) { try { ContentValues values = new ContentValues(); // 下面的操作會(huì)根據(jù)RawContacts表中已有的rawContactId使用情況自動(dòng)生成新聯(lián)系人的rawContactId Uri rawContactUri = context.getContentResolver().insert( RawContacts.CONTENT_URI, values); long rawContactId = ContentUris.parseId(rawContactUri); // 向data表插入姓名數(shù)據(jù) String name = contact.getName(); if (name != "") { values.clear(); values.put(Data.RAW_CONTACT_ID, rawContactId); values.put(Data.MIMETYPE, StructuredName.CONTENT_ITEM_TYPE); values.put(StructuredName.GIVEN_NAME, name); context.getContentResolver().insert( ContactsContract.Data.CONTENT_URI, values); } // 向data表插入電話數(shù)據(jù) String mobile_number = contact.getPhone1().get(0); if (mobile_number != "") { values.clear(); values.put(Data.RAW_CONTACT_ID, rawContactId); values.put(Data.MIMETYPE, Phone.CONTENT_ITEM_TYPE); values.put(Phone.NUMBER, mobile_number); values.put(Phone.TYPE, Phone.TYPE_MOBILE); context.getContentResolver().insert( ContactsContract.Data.CONTENT_URI, values); } // 向data表插入Email數(shù)據(jù) String email = contact.getEmail(); if (email != "") { values.clear(); values.put(Data.RAW_CONTACT_ID, rawContactId); values.put(Data.MIMETYPE, Email.CONTENT_ITEM_TYPE); values.put(Email.DATA, email); values.put(Email.TYPE, Email.TYPE_WORK); context.getContentResolver().insert( ContactsContract.Data.CONTENT_URI, values); } // 向data表插入QQ數(shù)據(jù) String qq = contact.getQq(); if (qq != "") { values.clear(); values.put(Data.RAW_CONTACT_ID, rawContactId); values.put(Data.MIMETYPE, Im.CONTENT_ITEM_TYPE); values.put(Im.DATA, qq); values.put(Im.PROTOCOL, Im.PROTOCOL_QQ); context.getContentResolver().insert( ContactsContract.Data.CONTENT_URI, values); } // 向data表插入備注信息 String describe = contact.getDescribe(); if (describe != "") { values.clear(); values.put(Data.RAW_CONTACT_ID, rawContactId); values.put(Data.MIMETYPE, Note.CONTENT_ITEM_TYPE); values.put(Note.NOTE, describe); context.getContentResolver().insert( ContactsContract.Data.CONTENT_URI, values); } // 向data表插入頭像數(shù)據(jù) Bitmap sourceBitmap = BitmapFactory.decodeResource( context.getResources(), R.drawable.icon); final ByteArrayOutputStream os = new ByteArrayOutputStream(); // 將Bitmap壓縮成PNG編碼,質(zhì)量為100%存儲(chǔ) sourceBitmap.compress(Bitmap.CompressFormat.PNG, 100, os); byte[] avatar = os.toByteArray(); values.put(Data.RAW_CONTACT_ID, rawContactId); values.put(Data.MIMETYPE, Photo.CONTENT_ITEM_TYPE); values.put(Photo.PHOTO, avatar); context.getContentResolver().insert( ContactsContract.Data.CONTENT_URI, values); } catch (Exception e) { return false; } return true; }
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持創(chuàng)新互聯(lián)。