Android跳轉(zhuǎn)到通訊錄獲取用戶(hù)名稱(chēng)和手機(jī)號(hào)碼的實(shí)現(xiàn)思路
效果圖如下所示:
先給大家說(shuō)下實(shí)現(xiàn)android 跳轉(zhuǎn)到通訊錄的實(shí)現(xiàn)思路:
1.點(diǎn)擊跳轉(zhuǎn)到通訊錄界面
2.獲取通訊錄姓名和手機(jī)號(hào)碼
3.回調(diào)顯示姓名和手機(jī)號(hào)碼
1首先是跳轉(zhuǎn)到通訊錄界面
Uri uri = Uri.parse("content://contacts/people"); Intent intent = new Intent(Intent.ACTION_PICK, uri); startActivityForResult(intent, 0);
通過(guò)設(shè)置通訊錄url跳轉(zhuǎn),可以看到我們用回調(diào)函數(shù)實(shí)現(xiàn)
2.回調(diào)函數(shù)
/* * 跳轉(zhuǎn)聯(lián)系人列表的回調(diào)函數(shù) * */ @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { switch (requestCode){ case 0: if(data==null) { return; } //處理返回的data,獲取選擇的聯(lián)系人信息 Uri uri=data.getData(); String[] contacts=getPhoneContacts(uri); et_name.setText(contacts[0]); et_tele.setText(contacts[1]); break; } super.onActivityResult(requestCode, resultCode, data); }
其中g(shù)etPhoneContacts(uri)方法,因?yàn)槭謾C(jī)的聯(lián)系人和手機(jī)號(hào)并不再同一個(gè)數(shù)據(jù)庫(kù)中,所以我們需要分別做處理
private String[] getPhoneContacts(Uri uri){ String[] contact=new String[2]; //得到ContentResolver對(duì)象 ContentResolver cr = getContentResolver(); //取得電話本中開(kāi)始一項(xiàng)的光標(biāo) Cursor cursor=cr.query(uri,null,null,null,null); if(cursor!=null) { cursor.moveToFirst(); //取得聯(lián)系人姓名 int nameFieldColumnIndex=cursor.getColumnIndex(ContactsContract.Contacts.DISPLAY_NAME); contact[0]=cursor.getString(nameFieldColumnIndex); //取得電話號(hào)碼 String ContactId = cursor.getString(cursor.getColumnIndex(ContactsContract.Contacts._ID)); Cursor phone = cr.query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null, ContactsContract.CommonDataKinds.Phone.CONTACT_ID + "=" + ContactId, null, null); if(phone != null){ phone.moveToFirst(); contact[1] = phone.getString(phone.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER)); } phone.close(); cursor.close(); } else { return null; } return contact; }
3.加權(quán)限
<!--獲取通訊錄權(quán)限--> <uses-permission Android:name="android.permission.READ_CONTACTS" /> <uses-permission android:name="android.permission.READ_PHONE_STATE" />
以上所述是小編給大家介紹的Android跳轉(zhuǎn)到通訊錄獲取用戶(hù)名稱(chēng)和手機(jī)號(hào)碼的實(shí)現(xiàn)思路,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
相關(guān)文章
Java4Android開(kāi)發(fā)教程(二)hello world!
一般的開(kāi)發(fā)教程都是介紹完安裝配置開(kāi)發(fā)環(huán)境,緊接著來(lái)一篇hello world,算是國(guó)際慣例吧,我們當(dāng)然也不能免俗,哈哈,各位看官請(qǐng)看好了!2014-10-10Android 使用手機(jī)NFC的讀取NFC標(biāo)簽數(shù)據(jù)的方法
這篇文章主要介紹了Android 使用手機(jī)NFC的讀取NFC標(biāo)簽數(shù)據(jù)的方法,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-07-07Android自定義View實(shí)現(xiàn)角度選擇器
前幾天在Google Photos查看照片,用了一下它的圖片剪裁功能,于是我馬上就被其界面和操作吸引。后來(lái)想模仿做一個(gè)和Google Photos裁圖頁(yè)面幾乎一模一樣的角度選擇器,本文比較基礎(chǔ),在閱讀本文前只需要掌握最基礎(chǔ)的自定義View知識(shí)和Android事件知識(shí)。下面來(lái)一起學(xué)習(xí)下吧。2016-11-11淺析Android位置權(quán)限以及數(shù)組尋找索引的坑
這篇文章給大家分享了Android位置權(quán)限以及數(shù)組尋找索引的坑的相關(guān)知識(shí)點(diǎn)內(nèi)容,有興趣的朋友可以參考學(xué)習(xí)下。2018-07-07Android 實(shí)現(xiàn)獲取手機(jī)里面的所有圖片詳解及實(shí)例
這篇文章主要介紹了Android 實(shí)現(xiàn)獲取手機(jī)里面的所有圖片詳解及實(shí)例的相關(guān)資料,需要的朋友可以參考下2017-05-05Android 自定義view實(shí)現(xiàn)TopBar效果
這篇文章主要為大家詳細(xì)介紹了Android 自定義view實(shí)現(xiàn)TopBar效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-09-09Android多設(shè)備多module打包fat-aar(最新推薦)
這篇文章主要介紹了Android多設(shè)備多module打包(fat-aar),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-03-03