【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");
        }
    };
相关推荐
Perry 123几秒前
Java中的多态
java·开发语言
ZC跨境爬虫几秒前
跟着 MDN 学CSS day_1:(CSS 基石与色彩的艺术)
前端·javascript·css·ui·html
asdfg12589637 分钟前
一文理解软件开发中的“设计模式”
java·设计模式·软件开发
hikktn12 分钟前
企业级Spring Boot应用管理:从零打造生产级启动脚本
java·spring boot·后端
砍材农夫14 分钟前
物联网 基于netty构建mqtt协议规范(三种 QoS 等级)
java·开发语言·物联网
NiceCloud喜云15 分钟前
Claude API 流式输出(SSE)实战:从打字机效果到工具调用全流程
java·前端·ide·人工智能·chrome·intellij-idea·状态模式
甲方大人请饶命16 分钟前
Java-IO流
java·开发语言
SimonKing18 分钟前
别再死磕 Elasticsearch 了,这个轻量级搜索引擎更香
java·后端·程序员
asdfg125896318 分钟前
一文理解“工程化思维”
java·编程思想
阿昌喜欢吃黄桃19 分钟前
并发线程工具类分享
java·线程池·多线程·并发·juc