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

Android实现跨进程通信

Kaneki 移动开发工程师
难度中级
时长 1小时59分
学习人数
综合评分9.53
13人评价 查看评价
9.2 内容实用
9.4 简洁易懂
10.0 逻辑清晰

最新回答 / sam寨
子进程中,这个可以类比网络请求来理解客户端发送请求给服务器,服务器和客户端物理上就不是同一个机器,所以显然是在两个进程中,而客户端在主线程发送请求当然会阻塞,除非请求的时候是在子线程中进行

最新回答 / 慕丝4348654
确实是同一个模块,但是在在不同的process,一个在mainactivity 的默认包进程,一个在:remote进程,所以也是实现了跨进程的。

最新回答 / 绝尘释爱
创建一个共享内存,发送的时候把数据存到共享内存中,接收的时候读取共享内存中的数据

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

最新回答 / 夜丶丿迷茫
虽然是异步的  但是 只是一个初始化 没有别的操作  而且是在点击事件里头来注册的 所以是不会有影响  如果害怕出现错误 可以做下null判断就好 如果需要在bindService后直接进行注册 可以在onServiceConnected回调里头进行注册

最新回答 / 夜丶丿迷茫
需要贴下代码  看你是怎么写的 

最新回答 / 慕田峪0665080
https://github.com/zhaozeyx/aidl.git 我的实现代码,开发语言 kotlin

讲师回答 / Kaneki
Project目录结构,生产类在 /build/generated/aidl_source_output_dir/debug/compileDebugAidl/out 目录下;切换到Android目录结构,就在在java(generated)目录下
首页上一页12下一页尾页
课程须知
本课程适合有一定的Android基础,想彻底了解Android进程间通信的同学。
老师告诉你能学到什么?
1、Android中多进程开发的应用和关键技术 2、Android中进程间通信的主要方式以及应用场景 3、Binder 框架在•Android中的应用 4、AIDL Messenger的底层原理和开发应用 5、AIDL 中关键字 oneway in out inout的作用和原理 6、Binder连接池的开发与实现

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消