日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

Android添加聯(lián)系人到通訊錄的方法

瀏覽:67日期:2022-09-18 13:53:17
目錄字段聯(lián)系人名字聯(lián)系人昵稱聯(lián)系人頭像聯(lián)系人備注聯(lián)系人號(hào)碼聯(lián)系人公司和職位網(wǎng)站聯(lián)系人郵箱聯(lián)系人地址添加方式1. 靜默添加2. 跳轉(zhuǎn)添加3. 添加到現(xiàn)有聯(lián)系人權(quán)限字段聯(lián)系人名字

名字不知道為什么,值設(shè)置了之后傳過去沒有,于是自己通過 Intent 最后又單獨(dú)傳了一次

// 聯(lián)系人名字ContentValues row1 = new ContentValues();String name = lastName + middleName + firstName;row1.put(ContactsContract.Data.MIMETYPE, ContactsContract.CommonDataKinds.StructuredName.CONTENT_ITEM_TYPE);row1.put(ContactsContract.CommonDataKinds.StructuredName.DISPLAY_NAME, name);row1.put(ContactsContract.CommonDataKinds.StructuredName.GIVEN_NAME, firstName);row1.put(ContactsContract.CommonDataKinds.StructuredName.FAMILY_NAME, lastName);row1.put(ContactsContract.CommonDataKinds.StructuredName.MIDDLE_NAME, middleName);聯(lián)系人昵稱

ContentValues row2 = new ContentValues();row2.put(ContactsContract.Data.MIMETYPE, ContactsContract.CommonDataKinds.Nickname.CONTENT_ITEM_TYPE);row2.put(ContactsContract.CommonDataKinds.Nickname.NAME, nickName);聯(lián)系人頭像

這里需要將圖片的 byte 數(shù)組傳進(jìn)去

ContentValues row3 = new ContentValues();//添加頭像row3.put(ContactsContract.Data.MIMETYPE, ContactsContract.CommonDataKinds.Photo.CONTENT_ITEM_TYPE);Bitmap bitmap = BitmapFactory.decodeFile(photoFilePath);ByteArrayOutputStream baos = new ByteArrayOutputStream();bitmap.compress(Bitmap.CompressFormat.JPEG, 100, baos);row3.put(ContactsContract.CommonDataKinds.Photo.PHOTO, baos.toByteArray());聯(lián)系人備注

// 聯(lián)系人備注ContentValues row4 = new ContentValues();row4.put(ContactsContract.Data.MIMETYPE, ContactsContract.CommonDataKinds.Note.CONTENT_ITEM_TYPE);row4.put(ContactsContract.CommonDataKinds.Note.NOTE, remark);聯(lián)系人號(hào)碼

號(hào)碼有很多種類型,電話,手機(jī),傳真,公司,家庭,等

ContentValues row5 = new ContentValues();// 聯(lián)系人的電話號(hào)碼addPhoneNumber(row5, values, mobilePhoneNumber, ContactsContract.CommonDataKinds.Phone.TYPE_MOBILE);ContentValues row6 = new ContentValues();// 聯(lián)系人的公司電話addPhoneNumber(row6, values, hostNumber, ContactsContract.CommonDataKinds.Phone.TYPE_COMPANY_MAIN);ContentValues row7 = new ContentValues();// 聯(lián)系人的工作號(hào)碼addPhoneNumber(row7, values, workPhoneNumber, ContactsContract.CommonDataKinds.Phone.TYPE_WORK_MOBILE);ContentValues row8 = new ContentValues();// 聯(lián)系人的工作傳真addPhoneNumber(row8, values, workFaxNumber, ContactsContract.CommonDataKinds.Phone.TYPE_FAX_WORK);ContentValues row9 = new ContentValues();// 聯(lián)系人的住宅號(hào)碼addPhoneNumber(row9, values, homePhoneNumber, ContactsContract.CommonDataKinds.Phone.TYPE_HOME);ContentValues row10 = new ContentValues();// 聯(lián)系人的住宅傳真addPhoneNumber(row10, values, homeFaxNumber, ContactsContract.CommonDataKinds.Phone.TYPE_FAX_HOME);//封裝的添加方法private void addPhoneNumber( ContentValues row, ArrayList<ContentValues> values, String phoneNumber, int type) {row.put(ContactsContract.Data.MIMETYPE, ContactsContract.CommonDataKinds.Phone.CONTENT_ITEM_TYPE);row.put(ContactsContract.CommonDataKinds.Phone.NUMBER, phoneNumber);row.put(ContactsContract.CommonDataKinds.Phone.TYPE, type);values.add(row);}聯(lián)系人公司和職位

// 聯(lián)系人公司和職位ContentValues row11 = new ContentValues();row11.put(ContactsContract.Data.MIMETYPE, ContactsContract.CommonDataKinds.Organization.CONTENT_ITEM_TYPE);row11.put(ContactsContract.CommonDataKinds.Organization.COMPANY, organization);row11.put(ContactsContract.CommonDataKinds.Organization.TITLE, title);網(wǎng)站

// 聯(lián)系人網(wǎng)站ContentValues row12 = new ContentValues();row12.put(ContactsContract.Data.MIMETYPE, ContactsContract.CommonDataKinds.Website.CONTENT_ITEM_TYPE);row12.put(ContactsContract.CommonDataKinds.Website.URL, url);聯(lián)系人郵箱

// 插入Email數(shù)據(jù)ContentValues row13 = new ContentValues();row13.put(ContactsContract.Data.MIMETYPE, ContactsContract.CommonDataKinds.Email.CONTENT_ITEM_TYPE);row13.put(ContactsContract.CommonDataKinds.Email.DATA, email);row13.put(ContactsContract.CommonDataKinds.Email.TYPE, ContactsContract.CommonDataKinds.Email.TYPE_WORK);聯(lián)系人地址

地址分為家庭,工作和其他。有個(gè)問題,這里分段傳入之后添加完成無法顯示,只能自己將國(guó)家省市街道拼接,傳入到了地址字段,這樣就可以顯示出來,但是郵政編碼是無法顯示的

//其他地址ContentValues row14 = new ContentValues();addAddress(row14, values, addressCountry, addressState, addressCity, addressStreet, addressPostalCode, ContactsContract.CommonDataKinds.StructuredPostal.TYPE_OTHER);//家庭地址ContentValues row15 = new ContentValues();addAddress(row15, values, homeAddressCountry, homeAddressState, homeAddressCity, homeAddressStreet, homeAddressPostalCode, ContactsContract.CommonDataKinds.StructuredPostal.TYPE_HOME);//工作地址ContentValues row16 = new ContentValues();addAddress(row16, values, workAddressCountry, workAddressState, workAddressCity, workAddressStreet, workAddressPostalCode, ContactsContract.CommonDataKinds.StructuredPostal.TYPE_WORK);//添加地址方法private void addAddress(ContentValues row, ArrayList<ContentValues> values, String country, String region, String city, String street, String addressPostalCode, int type) { row.put(ContactsContract.Data.MIMETYPE, ContactsContract.CommonDataKinds.StructuredPostal.CONTENT_ITEM_TYPE); row.put(ContactsContract.CommonDataKinds.StructuredPostal.FORMATTED_ADDRESS, country + region + city + street); row.put(ContactsContract.CommonDataKinds.StructuredPostal.COUNTRY, country); row.put(ContactsContract.CommonDataKinds.StructuredPostal.REGION, region); row.put(ContactsContract.CommonDataKinds.StructuredPostal.CITY, city); row.put(ContactsContract.CommonDataKinds.StructuredPostal.STREET, street); row.put(ContactsContract.CommonDataKinds.StructuredPostal.POSTCODE, addressPostalCode); row.put(ContactsContract.CommonDataKinds.StructuredPostal.TYPE, type); values.add(row);}添加方式

添加方式分為三種,一種是靜默添加,直接存入數(shù)據(jù)庫(kù)中,另外兩種是跳轉(zhuǎn),直接新增或者添加到現(xiàn)有聯(lián)系人中

1. 靜默添加

以添加名字為例,直接插入到數(shù)據(jù)庫(kù)中

// 向RawContacts.CONTENT_URI空值插入,// 先獲取Android系統(tǒng)返回的rawContactId// 后面要基于此id插入值Uri rawContactUri = mActivity.getContentResolver().insert(ContactsContract.RawContacts.CONTENT_URI, values);long rawContactId = ContentUris.parseId(rawContactUri);values.put(ContactsContract.Data.RAW_CONTACT_ID, rawContactId);// 內(nèi)容類型values.put(ContactsContract.Data.MIMETYPE, ContactsContract.CommonDataKinds.StructuredName.CONTENT_ITEM_TYPE);// 聯(lián)系人名字values.put(ContactsContract.CommonDataKinds.StructuredName.GIVEN_NAME, firstName);values.put(ContactsContract.CommonDataKinds.StructuredName.FAMILY_NAME, lastName);values.put(ContactsContract.CommonDataKinds.StructuredName.MIDDLE_NAME, middleName);// 向聯(lián)系人URI添加聯(lián)系人名字mActivity.getContentResolver().insert(ContactsContract.Data.CONTENT_URI, values);2. 跳轉(zhuǎn)添加

將上邊的所有 row 添加到數(shù)組中,一起傳遞

List<ContentValues> values = new ArrayList<>();//添加需要設(shè)置的數(shù)據(jù)...Intent intent = new Intent(Intent.ACTION_INSERT, ContactsContract.Contacts.CONTENT_URI);intent.putExtra(ContactsContract.Intents.Insert.NAME, name);intent.putParcelableArrayListExtra(ContactsContract.Intents.Insert.DATA, values);mActivity.startActivity(intent);3. 添加到現(xiàn)有聯(lián)系人

將上邊的所有 row 添加到數(shù)組中,一起傳遞,跳轉(zhuǎn)后需要選擇聯(lián)系人

List<ContentValues> values = new ArrayList<>();//添加需要設(shè)置的數(shù)據(jù)...Intent intent = new Intent(Intent.ACTION_INSERT_OR_EDIT);intent.setType(ContactsContract.Contacts.CONTENT_ITEM_TYPE);intent.putParcelableArrayListExtra(ContactsContract.Intents.Insert.DATA, values);startActivity(intent);權(quán)限

權(quán)限不能忘了,不然會(huì)閃退報(bào)錯(cuò)的,分別是聯(lián)系人的讀寫權(quán)限

<uses-permission android:/> <uses-permission android:/>

總結(jié)到此為止,還算比較詳細(xì),有補(bǔ)充歡迎評(píng)論。

以上就是Android添加聯(lián)系人到通訊錄的方法的詳細(xì)內(nèi)容,更多關(guān)于Android添加聯(lián)系人到通訊錄的資料請(qǐng)關(guān)注好吧啦網(wǎng)其它相關(guān)文章!

標(biāo)簽: Android
相關(guān)文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
99精品视频在线| 欧美a级一区二区| 91av亚洲| a天堂资源在线| 国产成人精品一区二区三区免费 | 国产精品字幕| 日韩av免费| 亚洲精品小说| 一区视频在线| 综合激情婷婷| 日本va欧美va精品| 国产精品三p一区二区| 老司机免费视频一区二区| 美腿丝袜亚洲一区| 91嫩草亚洲精品| 欧美日韩水蜜桃| 午夜国产精品视频免费体验区| 亚洲激情婷婷| 亚洲精品黄色| 国产精品一区二区精品视频观看| 国产精品天天看天天狠| 精品国产一级| 久久精品青草| 视频在线在亚洲| 日本va欧美va精品| 国产一区二区三区四区五区| 久久久噜噜噜| 亚洲精品美女91| 风间由美中文字幕在线看视频国产欧美| 欧美片第1页| 美女精品在线观看| 国产丝袜一区| 国产96在线亚洲| 99热免费精品| 日本va欧美va瓶| 国产一区二区三区网| 欧美一区三区| 亚洲91网站| 国产专区精品| 国产亚洲一区在线| 国产精品欧美大片| 999国产精品永久免费视频app| 亚洲一区免费| 麻豆中文一区二区| 欧美精品一线| 国产精品久久久久久久免费软件 | 久久av免费看| 99视频精品全部免费在线视频| 美女精品一区| 精品欧美视频| 男女男精品网站| 福利一区二区三区视频在线观看| 亚洲主播在线| 欧美好骚综合网| 亚洲精品美女91| 成人欧美一区二区三区的电影| 蜜桃一区二区三区在线| 美女在线视频一区| 91精品推荐| 国产精品igao视频网网址不卡日韩 | 亚洲1区在线观看| 精品免费av一区二区三区| 婷婷成人基地| 久久99久久人婷婷精品综合| 亚洲国内精品| 国产高清亚洲| 在线精品视频在线观看高清| 麻豆久久久久久久| 美女国产一区| 欧洲一级精品| 欧美一区二区三区久久| 欧美+亚洲+精品+三区| 国产精品九九| 日韩精品一二三区| 欧产日产国产精品视频| 91精品啪在线观看国产爱臀| 欧美日韩国产在线一区| 久久久久久夜| 国产精品欧美三级在线观看| 伊人精品久久| 亚洲一级黄色| 精品美女在线视频| 日韩精品亚洲专区在线观看| 好吊一区二区三区| 日韩欧美一区二区三区免费看| 91精品一区| 美美哒免费高清在线观看视频一区二区 | 国产精品白丝久久av网站| 人人爽香蕉精品| 视频一区中文| 正在播放日韩精品| 欧美黄页在线免费观看| 亚洲一区二区av| 99亚洲视频| 国产日韩电影| 精品视频99| 国产视频网站一区二区三区| 亚洲精品亚洲人成在线观看| 午夜欧美视频| 欧美+亚洲+精品+三区| a日韩av网址| 黄色精品视频| 国产一区二区亚洲| 老牛国内精品亚洲成av人片| 欧美一区激情| 国产日韩中文在线中文字幕 | 欧美xxxx性| 国产欧美日韩在线观看视频| 日韩激情一区二区| 日韩av电影一区| 日本成人一区二区| 涩涩涩久久久成人精品| 久久夜色精品| 香蕉久久久久久久av网站| 99国产精品| 久久亚洲色图| 亚洲18在线| 欧美精品影院| 国产精品**亚洲精品| 国产伦精品一区二区三区千人斩| 日韩福利视频一区| 欧美亚洲免费| 国产欧美视频在线| 国产精品传媒麻豆hd| 老司机免费视频一区二区| 狠狠久久伊人| 在线一区视频观看| 宅男噜噜噜66国产日韩在线观看| 欧美一级专区| 日韩精品久久久久久久软件91| 日韩欧美中文字幕在线视频| 欧美一区不卡| 免费日韩成人| 日韩电影免费在线观看| 激情欧美一区二区三区| 中文日韩欧美| 免费成人在线观看| 日韩精品社区| 久久精品国产精品亚洲毛片| 成年男女免费视频网站不卡| 欧美成人基地| 国产亚洲在线观看| 日韩精品亚洲专区在线观看| 国产麻豆精品| 国产一区二区久久久久| 久久久久久久久丰满| 午夜精品婷婷| 日本午夜精品久久久久| 狠狠久久伊人| 狠狠久久婷婷| 91精品日本| 精品久久影院| 久久在线免费| 日韩中文字幕一区二区高清99| 国产亚洲一区| 久久精品青草| 日本不卡不码高清免费观看| 乱一区二区av| 免费国产自久久久久三四区久久| 亚洲精品在线二区| 久久三级毛片| 精品1区2区3区4区| 国产日韩欧美在线播放不卡| 日韩欧美综合| 六月丁香综合| 久久亚洲人体| 99久久亚洲精品蜜臀| 亚洲天堂日韩在线| 久久精品国产网站| 视频一区中文| 国产精品久久久网站| 婷婷亚洲五月| 国产高清视频一区二区| 黄色免费成人| 麻豆精品久久久| 午夜国产欧美理论在线播放 | 亚洲理论在线| 色综合狠狠操| 欧美综合国产| 国产中文字幕一区二区三区| 午夜久久美女| 欧美黑人做爰爽爽爽| 一区三区视频| 国产成人调教视频在线观看| 六月天综合网| 国产资源在线观看入口av| 男女性色大片免费观看一区二区 | 日韩中文字幕一区二区三区| 麻豆精品新av中文字幕| 国产午夜精品一区二区三区欧美| 精品亚洲成人| 日韩中文字幕不卡| se01亚洲视频 | 亚洲三级观看| 亚洲一级少妇| 婷婷亚洲成人| 日韩一级不卡| 日韩国产一区| 国产欧美亚洲精品a| 中国女人久久久|