请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

跨进程到别的进程调用,结果又回到当前进程的通信问题

有2个问题请教,一个是怎么跨进程通信的问题,可能我说的跨进程说法有点问题,我是只指的是像主进程activity 同 其他进程service那种跨进程调用,一个方法回调是到另一个进程去执行,结果又回到当前进程。 我用registerPluginBinder不行,注册进程registerPluginBinder 和 fetchBinder 进程不一致的话,fetchBinder都是空, 我看了registerPluginBinder中的源码似乎并没有service这种中间件来转发,他只是用RePluginServiceManager中的一个ConcurrentHashMap来存储binder 应该只能同进程通信,只能是注册registerPluginBinder那个进程才能拿到binder,相当于只是和当前进程所加载的插件通信了,

另一个是registerGlobalBinder这个和普通的registerPluginBinder有什么区别呢, 很尴尬,registerGlobalBinder源码没有看懂,这两者的binder 分别用在什么场合啊

正在回答 回答被采纳积分+3

1回答

提问者 路程 2021-01-10 00:27:32

最后搞明白了,还是得启动一个service 别的进程再去连,

1 回复 有任何疑惑可以回复我~
  • qndroid #1
    能不能简化一下你那边的业务逻辑,这么切来切去进程确实容易有问题,能不能插件间通信的时候,在一个进程,拿到结果以后,再在自己的插件中转发,通知等,保证插件间的交互越简单越好。
    回复 有任何疑惑可以回复我~ 2021-01-19 10:47:41
  • 提问者 路程 回复 qndroid #2
    不行,因为比较尴尬的是,另一个进程是一个游戏进程,而我要封装的插件是即时通讯的模块,所有方法只能在主进程运行,所以很尴尬。
    回复 有任何疑惑可以回复我~ 2021-01-21 00:02:28
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信