实习笔记-23
MutableLiveData踩坑
使用MutableLiveData的observer对数据进行观察,跳转界面返回后删除list中的元素,出现CurrentModificationException
改用Vector等线程安全的集合
Binder
Binder 与其他IPC的比较
binder | 共享内存 | Socket |
---|---|---|
拷贝一次 | 0 | 1 |
C/S模式,易用性高 | 控制负载,易用性差 | C/S开销大 |
为每个App分配UID | 访问接入点是开放的,不安全 | 访问接入点是开放的,不安全 |
共享内存 两个mmap,Binder一个mmap
AIDL
bindService到onConnection之间
asInterface会获得Proxy,
调用代理对象的方法会调用mRemote.transact,传递调用的方法的编码,并挂起当前进程
能够启动服务所在进程和服务