准备工作
在Android设备中访问SIM卡数据需要:
- Android 5.0及以上系统版本
- 设备已插入有效SIM卡
- 使用ContentResolver和TelephonyManager API
权限申请
在AndroidManifest.xml中添加权限声明:
运行时需要动态申请权限,建议使用ActivityResultContracts.RequestPermission
获取TelephonyManager实例
通过系统服务获取电话管理器:
- 在Activity中获取系统服务
- 转换为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中的字段数据:
字段名 | 说明 |
---|---|
name | 联系人姓名 |
number | 电话号码 |
通过TelephonyManager和ContentResolver的配合,开发者可以访问SIM卡中的联系人数据。需要注意及时释放Cursor资源,并正确处理权限申请流程。建议将读取到的联系人信息同步到设备本地数据库进行统一管理。
内容仅供参考,具体资费以办理页面为准。其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。
本文由神卡网发布。发布者:编辑员。禁止采集与转载行为,违者必究。出处:https://www.9m8m.com/777196.html