Binder客户端和驱动端通信流程实例分析(以acquireWakeLock()函数为例)(一)
发布时间
阅读量:
阅读量
(本文主要针对具备Binder框架基础认识但缺乏感性认知的读者群体进行撰写。为了使读者能够顺利理解文章内容并完成后续操作步骤,请确保具备 Android Framework 和 Linux Kernel 等软件体系的基本知识储备,并准备好一套完整的编译环境下的安卓6.0源代码资源以便于实现代码分析与验证过程中的关键环节复现工作。如需转载,请注明出处。)
正文开始
下图是一张常见的Binder通信机制流程图:

我们从细节出发,并以PowerManager内部类WakeLock提供的获取亮屏锁函数acquire()为例进行探讨。
为了便于追踪,在编写演示文稿时必须编写一个演示文稿,在其中插入一个按钮,在该按钮的点击事件函数中输入以下代码:
String TAG = "BinderDemo";
PowerManager.WakeLock wakeLock;
PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
wakeLock = pm.ne
全部评论 (0)
还没有任何评论哟~
