We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
@yangchong211 你好,我是开源库CC的作者,也是组件化技术的爱好者,今天(19.02.21)在掘金上从你的文章ARouter路由解析中进入到你的github主页,从而发现了这个项目,在阅读README的过程中看到4.6 存在待解决问题提出的问题,正好可以提供点建议,所以冒昧前来交流一下:
由于本项目的组件化引擎是ARouter,从1.3.1版本开始使用了我PR的自动注册插件arouter-register替代dex扫描来完成路由表的跨module注册以提高初始化性能并解决apk加固的兼容性问题。不过貌似本项目目前并未使用arouter-reigister插件
arouter-register
arouter-register插件是在AutoRegister插件的基础上ARouter定制的简化版本,只完成了路由表相关的3个接口实现类的自动注册,其好处是不需要用户手动配置扫描规则 AutoRegister插件是一个与具体业务无关的功能性框架,根据配置的规则,使用ASM来扫描字节码并生成注册代码。 所以,我们可以为AutoRegister插件配置ARouter的扫描需求,并额外通过增加配置来完成【4.6 存在待解决问题】中的需求,具体配置方法见AutoRegister文档
arouter-register插件
AutoRegister插件
也可以参考这篇文章来配置,还需要仿照ARouter里LogisticsCenter的写法,在MyApplication中提供2个生成自动注册代码所需要的方法
很高兴在你的文章里关于跨进程解决思路相关描述中提到了CC,CC在2.0版本之前确实使用的是BroadcastReceiver + Service + LocalSocket的方案来实现跨app组件调用。
2018年9月份CC进入了2.0时代,重构了跨进程通信机制和自动注册插件,新版本框架底层使用了ContentProvider + AIDL来实现跨进程(包括App内部可跨App)的组件调用
另外,由于CC是基于组件调用而非路由跳转来实现组件之间通信的,不需要繁琐的onActivityResult,也就能避免README中4.7 组件化中Fragment通信难点这个章节中提到的Fragment回调问题
onActivityResult
以上!
The text was updated successfully, but these errors were encountered:
好的,非常感谢你的建议!
Sorry, something went wrong.
No branches or pull requests
@yangchong211 你好,我是开源库CC的作者,也是组件化技术的爱好者,今天(19.02.21)在掘金上从你的文章ARouter路由解析中进入到你的github主页,从而发现了这个项目,在阅读README的过程中看到4.6 存在待解决问题提出的问题,正好可以提供点建议,所以冒昧前来交流一下:
第一个建议是:开始使用arouter-register插件
由于本项目的组件化引擎是ARouter,从1.3.1版本开始使用了我PR的自动注册插件
arouter-register
替代dex扫描来完成路由表的跨module注册以提高初始化性能并解决apk加固的兼容性问题。不过貌似本项目目前并未使用arouter-reigister插件第二个建议是:用AutoRegister插件代替arouter-register插件来解决问题
arouter-register插件
是在AutoRegister插件
的基础上ARouter定制的简化版本,只完成了路由表相关的3个接口实现类的自动注册,其好处是不需要用户手动配置扫描规则AutoRegister插件是一个与具体业务无关的功能性框架,根据配置的规则,使用ASM来扫描字节码并生成注册代码。
所以,我们可以为AutoRegister插件配置ARouter的扫描需求,并额外通过增加配置来完成【4.6 存在待解决问题】中的需求,具体配置方法见AutoRegister文档
也可以参考这篇文章来配置,还需要仿照ARouter里LogisticsCenter的写法,在MyApplication中提供2个生成自动注册代码所需要的方法
以上,即可实现【4.6 存在待解决问题】中的需求
很高兴在你的文章里关于跨进程解决思路相关描述中提到了CC,CC在2.0版本之前确实使用的是BroadcastReceiver + Service + LocalSocket的方案来实现跨app组件调用。
2018年9月份CC进入了2.0时代,重构了跨进程通信机制和自动注册插件,新版本框架底层使用了ContentProvider + AIDL来实现跨进程(包括App内部可跨App)的组件调用
欢迎前来围观: https://github.com/luckybilly/CC
另外,由于CC是基于组件调用而非路由跳转来实现组件之间通信的,不需要繁琐的
onActivityResult
,也就能避免README中4.7 组件化中Fragment通信难点这个章节中提到的Fragment回调问题以上!
The text was updated successfully, but these errors were encountered: