Android如何读取SIM卡中的联系人信息?

本文详细介绍了在Android系统中读取SIM卡联系人信息的完整流程,包含权限申请、TelephonyManager使用、数据查询与解析等关键步骤,适用于需要集成SIM卡通讯录功能的移动应用开发场景。

准备工作

在Android设备中访问SIM卡数据需要:

Android如何读取SIM卡中的联系人信息?

  • Android 5.0及以上系统版本
  • 设备已插入有效SIM卡
  • 使用ContentResolver和TelephonyManager API

权限申请

在AndroidManifest.xml中添加权限声明:


运行时需要动态申请权限,建议使用ActivityResultContracts.RequestPermission

获取TelephonyManager实例

通过系统服务获取电话管理器:

  1. 在Activity中获取系统服务
  2. 转换为TelephonyManager对象
TelephonyManager tm = (TelephonyManager)
getSystemService(Context.TELEPHONY_SERVICE);

读取SIM卡联系人

通过ContentResolver查询SIM卡数据库:

Uri simUri = Uri.parse("content://icc/adn");
Cursor cursor = getContentResolver.query(
simUri,
null,
null,
null,
null
);

数据解析与展示

解析Cursor中的字段数据:

SIM卡联系人字段说明
字段名 说明
name 联系人姓名
number 电话号码

通过TelephonyManager和ContentResolver的配合,开发者可以访问SIM卡中的联系人数据。需要注意及时释放Cursor资源,并正确处理权限申请流程。建议将读取到的联系人信息同步到设备本地数据库进行统一管理。

内容仅供参考,具体资费以办理页面为准。其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。

本文由神卡网发布。发布者:编辑员。禁止采集与转载行为,违者必究。出处:https://www.9m8m.com/777196.html

(0)
上一篇 2025年4月2日 上午8:33
下一篇 2025年4月2日 上午8:34

相关推荐

联系我们
关注微信
关注微信
分享本页
返回顶部