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. Android(安卓)获取View高度宽度
  2. android获得mac和ip
  3. Android下如何获取CPU序列号
  4. Android(安卓)获取AndroidManifest.xml文件versionCode,versionNa
  5. Androidの异常总结
  6. Android(安卓)WebView获取上一个链接的路径
  7. android-仿QQtab
  8. android 一键锁屏实现
  9. Android(安卓)获取包名,版本信息

随机推荐

  1. Android屏幕自适应的四种方法
  2. Android做了些什么?
  3. Android中隐藏ActionBar的方法
  4. 更新Android(安卓)SDK, 升级ADT遇到的问
  5. android生命周期的例子
  6. android 自定义View中获取系统属性
  7. Android去掉头部标题
  8. android ndk 入门 - 一个简单的ndk工程
  9. Android(安卓)TextView跑马灯抖动问题
  10. Android:configChanges 属性