齐翊(学义)

Results 1 issues of 齐翊(学义)

@yangchong211 你好,我是开源库[CC](https://github.com/luckybilly/CC)的作者,也是组件化技术的爱好者,今天(19.02.21)在掘金上从你的文章[ARouter路由解析](https://juejin.im/post/5c6d247c6fb9a049ae087a81)中进入到你的github主页,从而发现了这个项目,在阅读README的过程中看到[4.6 存在待解决问题](https://github.com/yangchong211/LifeHelper#46-%E5%AD%98%E5%9C%A8%E5%BE%85%E8%A7%A3%E5%86%B3%E9%97%AE%E9%A2%98)提出的问题,正好可以提供点建议,所以冒昧前来交流一下: ### 第一个建议是:开始使用arouter-register插件 由于本项目的组件化引擎是ARouter,从1.3.1版本开始使用了我[PR](https://github.com/alibaba/ARouter/pull/254)的自动注册插件`arouter-register`替代dex扫描来完成路由表的跨module注册以提高初始化性能并解决apk加固的兼容性问题。不过貌似本项目目前[并未使用arouter-reigister插件](https://github.com/yangchong211/LifeHelper/search?q=arouter-register&unscoped_q=arouter-register) ### 第二个建议是:用AutoRegister插件代替arouter-register插件来解决问题 `arouter-register插件`是在`AutoRegister插件`的基础上ARouter定制的简化版本,只完成了[路由表相关的3个接口实现类](https://github.com/alibaba/ARouter/blob/a264776748507ffe8b868706bee1320a3b112624/arouter-gradle-plugin/src/main/groovy/com/alibaba/android/arouter/register/launch/PluginLaunch.groovy#L29)的自动注册,其好处是不需要用户手动配置扫描规则 AutoRegister插件是一个与具体业务无关的功能性框架,根据配置的规则,使用ASM来扫描字节码并生成注册代码。 所以,我们可以为AutoRegister插件配置ARouter的扫描需求,并额外通过增加配置来完成【4.6 存在待解决问题】中的需求,具体配置方法见[AutoRegister文档](https://github.com/luckybilly/AutoRegister) 也可以参考[这篇文章](https://juejin.im/post/5aa2067951882555867efe79)来配置,还需要仿照ARouter里[LogisticsCenter](https://github.com/alibaba/ARouter/blob/a264776748507ffe8b868706bee1320a3b112624/arouter-api/src/main/java/com/alibaba/android/arouter/core/LogisticsCenter.java#L63)的写法,在MyApplication中提供2个生成自动注册代码所需要的方法 以上,即可实现【4.6 存在待解决问题】中的需求 --- 很高兴在你的文章里关于跨进程解决思路相关描述中[提到了CC](https://juejin.im/post/5c6d247c6fb9a049ae087a81#heading-13),CC在2.0版本之前确实使用的是BroadcastReceiver + Service + LocalSocket的方案来实现跨app组件调用。 2018年9月份CC进入了2.0时代,重构了跨进程通信机制和自动注册插件,新版本框架底层使用了ContentProvider + AIDL来实现跨进程(包括App内部可跨App)的组件调用 ### 欢迎前来围观: https://github.com/luckybilly/CC 另外,由于CC是基于[组件调用](https://luckybilly.github.io/CC-website/#/integration-call-component)而非路由跳转来实现组件之间通信的,不需要繁琐的`onActivityResult`,也就能避免README中[4.7 组件化中Fragment通信难点](https://github.com/yangchong211/LifeHelper#47-%E7%BB%84%E4%BB%B6%E5%8C%96%E4%B8%ADfragment%E9%80%9A%E4%BF%A1%E9%9A%BE%E7%82%B9)这个章节中提到的Fragment回调问题 以上!