源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

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

  • 时间:2020-04-23 00:52 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:Android获取手机通讯录、sim卡联系人及调用拨号界面方法
[b]android获取手机通讯录联系人信息[/b]
[u]复制代码[/u] 代码如下:
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();      }   } 
[b]获得手机sim卡联系人信息[/b] sim卡和手机本人 获取的方式类似 只是url有点不一样 ,须要注意的一点是 sim卡  是没有联系人头像的。
[u]复制代码[/u] 代码如下:
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();      }  } 
[b]调用系统拨打电话的界面 ,代码如下。 [/b]tel:电话号码
[u]复制代码[/u] 代码如下:
//调用系统方法拨打电话        Intent dialIntent = new Intent(Intent.ACTION_CALL, Uri.parse("tel:" + mContactsNumber.get(position)));        startActivity(dialIntent);  
[b]最后,千万别忘记在AndroidManifest.xml文件中添加权限,否则运行程序是报错![/b]
[u]复制代码[/u] 代码如下:
<!-- 读取联系人权限 -->     <uses-permission android:name="android.permission.READ_CONTACTS"/>    <!-- 拨打电话权限 -->    <uses-permission android:name="android.permission.CALL_PHONE"/> 
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部