Android sim卡 pin码解锁流程.
sim卡 pin码解锁流程
1、 PIN码解锁界面属于Phone Policy的一部分,代码位置在
\frameworks\base\policy\src\com\android\internal\policy\impl\SimUnlockScreen.java。
当用户输入PIN码按下OK键时,会调用checkPin()函数通过启动一个线程CheckSimPin来调用TelephonyManager的supplyPin()接口,
并注册一个类似于Callback的虚函数onSimLockChangedResponse()并实现之,这样当supplyPin()调用返回时,触发该Callback函数。
通过 CheckSimPin 线程 run()方法ITelephony.Stub.asInterface(ServiceManager.checkService("phone")).supplyPin(mPin);
2、supplyPin()接口的具体实现在PhoneInterfaceManager中,代码位置在packages/apps/Phone/src/com/android/phone/PhoneInterfaceManager.java
supplyPin(string pin)调用==》checkSimPin.unlockSim(null, pin);==》》unlockSim(String puk, String pin)==》》mSimCard.supplyPin(pin, callback);
3、mSimCard 就是\frameworks\base\telephony\java\com\android\internal\telephony\IccCard.java 里调用 supplyPin (String pin, Message onComplete)
==》mPhone.mCM.supplyIccPin(pin, mHandler.obtainMessage(EVENT_PINPUK_DONE, onComplete));
mCM其实就是(\frameworks\base\telephony\java\com\android\internal\telephony\RIL.java)Ril.java文件====》
supplyIccPin(String pin, Message result)===》supplyIccPinForApp(pin, null, result); 这样就可通过RILSender 把命令发给AT,等待RILReciver 响应。
--------------------------------------------------------------------
AT+CPIN?
OK
+CPIN: SIM PIN
AT+CPIN=1234
OK
+CPIN: READY
====================
AT+CPIN=1234,(null) 这个是不对的。4.0上
Android sim卡 pin码解锁流程.相关推荐
- SIM卡PIN码管理
ADD: http://blog.chinaunix.net/u3/102827/showart_2045521.html 1. SIM 卡 PIN 码管理简述 与 SIM 卡密码码管理相关的密码有 ...
- 给你的手机加上安全保障,请设置SIM卡PIN码
[手机上了锁,为啥还丢钱?专家支招:设置SIM卡PIN码]智能手机一旦丢失,不仅会带来诸多不便,甚至还会造成个人隐私泄露及财产损失. 然而很多人认为,自己已经设置了手机屏锁.支付密码.指纹锁等防御措施 ...
- SIM卡PIN码到底有什么用?华为手机如何设置SIM卡锁?
最近看到一篇热文<一部手机失窃而揭露的窃取个人信息实现资金盗取的黑色产业链>,一个自称是信息安全的专家,自述因为手机失窃,SIM卡挂失失败遭遇手机黑产,个人身份信息.各种支付账号密码等信息 ...
- Android SIM卡识别加载流程
文章目录 总述 代码路径 UICC框架 SIM卡识别加载流程 日志分析举例 总述 本文基于Android N(Android 7) 首先要知道SIM卡一般是挂载在CP侧(MODEM侧)的,由MODEM ...
- Android SIM 卡信息加载流程
在PhoneAPP启动关系类初始化中,我们提到监听处理SIM卡状态的两个关键类UiccController和IccCardProxy UiccController:整个UICC事务处理的入口,负责对外 ...
- 手机SIM卡PIN码的重要性
国庆出门在外,钱包除了各种证件,似乎没多少现金存放的必要了,甚至很多女孩子更习惯于卡包+手机的搭配,可人生地不熟或者人潮涌动的环境下,手机一旦丢失,后果不堪想象. 很多人认为,只要设置了手机屏锁.支付 ...
- android sim 卡双卡双待
转载自http://blog.csdn.net/hellolinshoujie/article/details/7790566 Moto XT800(双卡手机)短信和电话服务的总结 分类: Andro ...
- android+sim卡短信,android 信息(mms)开发(七)-- sim卡短信
这篇关于android源码是如何操作sim卡上的信息说明,sim\usim卡的信息说起来这算是比较特别的一部分,由于android源码的信息是没有开机自动导卡信息和联系人的,所以有时会忘掉它的存在应该 ...
- Android11 PIN码解锁分析
在上一篇文章里我们分析了手势绘制解锁的整个流程,这次我们来分析一下PIN码解锁时所相关的内容 布局 在我们分析流程之前,我们先来看到KeyguardPINView这个类,他是用于显示解锁的 PIN 键 ...
最新文章
- 硬件开源需求迫切?开源笔电 Nevona 筹款金额达预设目标3倍
- XGBoost使用教程(与sklearn一起使用)二
- 梁勇 java教材 编程练习题 第二章 2.6 键盘 读取一个在0 到 9999 之间的整数,并将该整数的各位数字相加。...
- android程序导入虚拟机,android项目打包成apk应用程序后部署到虚拟机上测试
- JDK 中的证书生成和管理工具 keytool
- php和python-一个身居中国的法国程序员谈Python与PHP
- Chrome查看Android的systrace抓取的log
- ubuntu上解决evolution邮箱附件为dat格式
- SpringBoot使用RestTemplate 摘要认证
- 窗台上晒了一本书,三个人问了三个问题
- 外卖侠4.24源码全插件cps使用教程【干货】
- 高通工具QXDM安装及使用方法
- Android实训——图书管理系统
- iMeta: 南医大余光创组ggtree最新文章-系统发育树存储与可视化的数据结构
- 向量空间的基和维数例题_向量空间的基与维数.ppt
- centos7 小图标_Centos7 桌面图标设置
- CAD中怎么给设备赋值?
- JS数据交互:动态从数据库中获取数据填充Select
- Windows下获取计算机名和当前用户名
- Linux UVC driver 独立交叉编译记录
热门文章
- Gartner发布2022年云平台服务技术成熟度曲线,iPaaS、低代码将达到成熟期
- windows资源管理器对文件右键未响应!电脑小白求救[哭唧唧]!!!
- 【C++学习汇总】【黑马程序员】
- 搭建室内四轴无人机(一)
- U盘名从E:/变成F:/,怎么修改回来
- Android 天气APP(三十六)运行到本地AS、更新项目版本依赖、去掉ButterKnife
- 解读大内老A的《.NET Core框架本质》
- Open source licenses
- 2021-10-28项目集管理PgMP:刷新项目管理思维与架构︱项目管理者联盟联合创始人宣晓锋
- C# 从零开始写 SharpDx 应用 初始化dx修改颜色