
Android
文章平均质量分 92
詹码农
这个作者很懒,什么都没留下…
展开
-
进程间的通信-AIDL-IPC Binder的原理和源码阅读
1、首先客户端调用context.bindService方法,在intent里面设置action隐式意图绑定服务---->使指定action的Service调用onBind方法,onBind方法执行完,返回IBinder实例–>把返回的IBinder实例,同时调用客户端的onServiceConnected方法,把IBinder实例作为参数传递到客户端。拿到服务对象,调用服务端的onBind方法。然后再进行跨进程通信,拿到AMS的IBinder驱动,调用AMS的publishService方法,发布服务。原创 2023-05-06 14:33:46 · 171 阅读 · 0 评论 -
handler源码分析--以及手写一个handler
(注意:子线程可以创建Handler,一个线程可以创建多个Handler对象,但一个线程只能对应一个Looper对象,这是ThreadLocal机制,一个Looper对应一个MessageQueue。(3)为什么使用while循环,而不是if语句:因为有可能在别处没有初始化mLooper变量的地方使用了synchronized代码,并且用的锁是同一个对象,并且在里面调用了notifyAll,从而把getLooper方法给唤醒,如果使用if语句,那被唤醒之后,mLooper变量还是为null。原创 2023-05-06 14:31:10 · 188 阅读 · 1 评论 -
自定义画一个圆弧
自定义View原创 2022-09-23 15:45:53 · 330 阅读 · 0 评论 -
自定义View
自定义View原创 2022-09-20 08:53:20 · 826 阅读 · 0 评论