Android获取手机通讯录、sim卡联系人及调用拨号界面方法

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"/>

时间: 2024-09-12 00:43:59

Android获取手机通讯录、sim卡联系人及调用拨号界面方法的相关文章

Android获取手机通讯录、sim卡联系人及调用拨号界面方法_Android

android获取手机通讯录联系人信息 复制代码 代码如下: private void getPhoneContacts() {        ContentResolver resolver = this.getContentResolver();                // 获取手机联系人       Cursor phoneCursor = resolver.query(Phone.CONTENT_URI,                  new String[] { Phone

三星A7(2016)手机把SIM卡联系人导出到SD卡

为什么要把SIM卡的联系人导入到SD卡呢,这个有几个方面的原因了一个是导入SD卡可以设置联系人头像之类的,另一个SIM卡的存储空间是有限的导入到SD卡是可以存储更多的联系人了. 1.在三星A7(2016)待机页面下,点击[联系人].    2.点击[更多]选项,在右上角如截图所示.    3.点击[设置].    4.点击[导入/导出联系人].    5.点击[导出]图标,效果如下所示.    6.点击[SD卡] .   7.阅读"确认导出"提示后,点击[确认]即可.    导出的联系

Android获取手机SIM卡运营商信息的方法_Android

本文实例讲述了Android获取手机SIM卡运营商信息的方法,对于Android程序设计有非常实用的价值.分享给大家供大家参考之用.具体方法如下: 主要功能代码如下: /** * 获取SIM卡运营商 * * @param context * @return */ public static String getOperators(Context context) { TelephonyManager tm = (TelephonyManager) context .getSystemServic

浅析Android手机卫士sim卡绑定

读取sim卡的序列号,保存起来,一旦sim发生变更了,认为是小偷的sim卡,发出警告 读取sim卡序列号 获取TelephonyManager对象,通过getSystemService(TELEPHONY_SERVICE) 调用TelephonyManager对象的getSimSerialNumber()方法,得到String类型的序列号 把序列号保存在SharedPreences里面 需要加权限 android.permission.READ_PHONE_STATE 检测sim卡是否变更 使用

ios-iOS 获取手机通讯录遍历时,只有一个联系人(获取到了所有联系人,可是遍历时出问题了)求大神帮忙

问题描述 iOS 获取手机通讯录遍历时,只有一个联系人(获取到了所有联系人,可是遍历时出问题了)求大神帮忙 #import "AddressBook.h" #import "pinyin.h"//将汉字转换成英文 #import "Person.h"//将联系人信息存储成一个一个的person //存储通讯录的类 @interface AddressBook () @end @implementation AddressBook static A

华为荣耀3x畅玩版怎么把SIM卡联系人导入手机

1)我们在"华为荣耀3X畅玩版"手机中点击"联系人"进入之后点击右上角的[...]然后在打开菜单中点击[导入/导出]进入,具体步骤如下图所示.    2)现在我们会显示从那个SIM卡导入,我们选择好之后点击[全选]之后我们再点击[导入]具体如图.    3)接着在打开界面我们选择导入方式在此我们选择[手机]点击之后SIM卡联系人导入到手机中去了.

Android 获取手机联系人实例代码详解_Android

我的风格,废话不多说了,直接给大家贴代码了. 具体代码如下所示: package com.org.demo.demo; import com.org.wangfeng.R; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.util.Log; import android.view.View; import android.widget.Butt

华为Mate9怎么导入通讯录 华为Mate9导入SIM卡联系人方法

华为Mate9导入SIM卡联系人方法步骤: 一.首先将SIM卡安装到华为Mate9手机中,然后从华为Mate9桌面打开联系人,当我们进入空联系人的时候,选择[导入联系人],如图所示: 二.导入联系人的方式有三种:存储设备.SIM卡.其他手机,这里我们通过SIM卡讲联系人导入,如图所示: 三.最后,点击联系人设置,选择[精准识别],简洁模式,显示SIM联系人,可以最好的显示手机联系人,如图所示: 以上就是小编给大家推荐的导入SIM卡上联系人并用合适的方式显示SIM卡联系人的方法.除此之外,还可以使

Android 获取手机联系人实例代码详解

我的风格,废话不多说了,直接给大家贴代码了. 具体代码如下所示: package com.org.demo.demo; import com.org.wangfeng.R; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.util.Log; import android.view.View; import android.widget.Butt