为了账号安全,请及时绑定邮箱和手机立即绑定

添加的消息监听经过反序列化后为啥还会回调到主进程

在删除监听的时候删除不了,是因为在跨进程的时候对象被重新反序列化了。但是在添加监听的时候也会反序列化,会重新生成一个对象,为什么还会回调到主进程呢?求解答

正在回答

1 回答

首先你这是两个问题,之所以用arraylist不行,是因为arraylist只是简单根据元素是否相等去增加删除,所以由于序列化的问题前后已经不是一个对象了,那么自然删不掉,而用RemoteCallbackList可以,是因为内部使用的Ibinder来唯一标识的,所以可以删掉,而后续也是在此基础上,remote进程调用了主进程的消息接收服务。而消息类也加了in关键字,所以对象进行了写入的操作。最后主进程才打印了remote进程传的消息

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

添加的消息监听经过反序列化后为啥还会回调到主进程

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信