Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> Android獲取手機通訊錄、sim卡聯系人及調用撥號界面方法

Android獲取手機通訊錄、sim卡聯系人及調用撥號界面方法

編輯:關於Android編程

android獲取手機通訊錄聯系人信息
復制代碼 代碼如下:
private void getPhoneContacts() {   
    ContentResolver resolver = this.getContentResolver();   
       
    // 獲取手機聯系人   
   Cursor phoneCursor = resolver.query(Phone.CONTENT_URI, 
                new String[] { Phone.CONTACT_ID, Phone.DISPLAY_NAME, 
                        Phone.NUMBER }, 
                Phone.DISPLAY_NAME + "=?" + " AND " + Phone.TYPE + "='" 
                        + Phone.TYPE_MOBILE + "'", new String[] { name }, null); 
    if (phoneCursor != null) { 
        while (phoneCursor.moveToNext()) { 
            String number = phoneCursor.getString(2); 
                    // 當手機號碼為空的或者為空字段 跳過當前循環   
                    if (TextUtils.isEmpty(phoneNumber))   
                        continue; 
            // 得到聯系人名稱               
            String username = phoneCursor.getString(1); 
            mContactsName.add(contactName);   
                mContactsNumber.add(phoneNumber); 
 
        } 
        phoneCursor.close(); 
    }  

獲得手機sim卡聯系人信息

sim卡和手機本人 獲取的方式類似 只是url有點不一樣 ,須要注意的一點是 sim卡  是沒有聯系人頭像的。
復制代碼 代碼如下:
private void getSIMContacts() {   
    ContentResolver resolver = mContext.getContentResolver();   
    // 獲取Sims卡聯系人   
    Uri uri = Uri.parse("content://icc/adn");   
    Cursor phoneCursor = resolver.query(uri, 
                new String[] { Phone.CONTACT_ID, Phone.DISPLAY_NAME, 
                        Phone.NUMBER }, 
                Phone.DISPLAY_NAME + "=?" + " AND " + Phone.TYPE + "='" 
                        + Phone.TYPE_MOBILE + "'", new String[] { name }, null); 
    if (phoneCursor != null) { 
        while (phoneCursor.moveToNext()) { 
            String number = phoneCursor.getString(2); 
                    // 當手機號碼為空的或者為空字段 跳過當前循環   
                    if (TextUtils.isEmpty(phoneNumber))   
                        continue; 
            // 得到聯系人名稱               
            String username = phoneCursor.getString(1); 
            mContactsName.add(contactName);   
                mContactsNumber.add(phoneNumber); 
 
        } 
        phoneCursor.close(); 
    } 


調用系統撥打電話的界面 ,代碼如下。
tel:電話號碼
復制代碼 代碼如下:
//調用系統方法撥打電話   
    Intent dialIntent = new Intent(Intent.ACTION_CALL, Uri.parse("tel:" + mContactsNumber.get(position)));   
    startActivity(dialIntent);  

最後,千萬別忘記在AndroidManifest.xml文件中添加權限,否則運行程序是報錯!

復制代碼 代碼如下:
<!-- 讀取聯系人權限 -->    
<uses-permission android:name="android.permission.READ_CONTACTS"/>   
<!-- 撥打電話權限 -->   
<uses-permission android:name="android.permission.CALL_PHONE"/> 

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved