【Android】乱七八糟的小结

1.死亡回调

java 复制代码
private final ServiceConnection connection = new ServiceConnection() {
        @Override
        public void onServiceConnected(ComponentName name, IBinder service) {
            logD("launcher aidl connected");
            iLauncher = ILauncher.Stub.asInterface(service);
            try {
                // 为Binder 对象设置死亡回调,当绑定的服务进程死亡时,会触发这个回调
                iLauncher.asBinder().linkToDeath(new IBinder.DeathRecipient() {
               		// 当绑定的服务进程死亡时,系统会调用这个方法
                    @Override
                    public void binderDied() {
                        Log.d(TAG,"[binderDied] retry bindService!");
                        // 然后将 iLauncher 置为 null,以释放对旧服务代理对象的引用
                        iLauncher = null;
                        // 最后调用 bindService() 方法,尝试重新绑定服务
                        bindService();
                    }
                },0);
            } catch (RemoteException e) {
                e.printStackTrace();
            }
        }

        @Override
        public void onServiceDisconnected(ComponentName name) {
            logD("launcher aidl disconnected");
        }
    };
相关推荐
huabuyu几秒前
CLS 总是修不好?因为你只盯着分数,从没拆开看过它
前端·javascript
岁岁养乐多1 分钟前
LangChain4j 工厂模式
java·开发语言
kisshyshy2 分钟前
从多页面到SPA:React Router 路由进阶完全指南
前端·javascript·react.js
今日无bug2 分钟前
JS 数据类型 + 内存分配:从 8 种类型到栈堆模型
javascript·数据结构
小小小米粒12 分钟前
idea常用搭配
java
吃饱了得干活14 分钟前
Java Map 核心原理:从数据结构到 put/get 执行,一篇彻底讲透
java·后端
晚安code14 分钟前
Java并发集合详解:从HashMap到ConcurrentHashMap
java
xiaominlaopodaren16 分钟前
three.js地图数学基础(三):实战墨卡托
javascript·gis·three.js
雪碧聊技术22 分钟前
力扣 回溯法 | LCR 020. 回文子串
javascript·算法·leetcode
不才不才不不才23 分钟前
Spring 源码系列(17): HandlerMapping 与 HandlerAdapter 两大体系
java·后端·spring