[Android]如何做一个崩溃率少于千分之三噶应用app(27

作者: CangWang | 来源:发表于2017-06-26 10:10 被阅读1962次

大家好,我系苍王。

以下是我这个系列的相关文章,有兴趣可以参考一下,可以给个喜欢或者关注我的文章。

[Android]如何做一个崩溃率少于千分之三噶应用app--章节列表

首先,这里先提一下,可以先查阅我之前的篇章

1.Activity分发功能module架构

2.Fragment分发module架构

3.View分发module架构

这里发布的是一个升级的的分发模块的架构,命名为ModuleBusEx(https://github.com/cangwang/ModuleBus/tree/ModuleBus_Ex),欢迎大家star一下。

使用这种框架,可以组件化实现例如映客直播间里面的效果,达到最佳完美的解耦。

一.ModuleBusEx优势

说一下ModuleBus进化版的优势

1.多层级,而且并木有重复叠加层级问题

2.同一个界面多模块独立研发

3.模块可以自由控制布局添加位置

4.模块中拥有自身的生命周期

5.自由加入和移除模块。

6.自由显示和隐藏模块。

7.通信框架使用原ModuleBus升级,可以不需要在base类中添加信息对象,通过方法名记录索引通信。(EventBus和RxBus需要在base中添加额外的通信信息类,具体使用,可以参考ModuleBus

二.实现优化

(1)本次优化最重要使用了RxJava和RxAndroid的线程加载方式,让加载初始速度得到质的飞越,解决了原ModuleBus加载卡顿问题。

代码并不复杂,直接上代码吧,也就是使用RxJava和RxAndroid异步创建和加载。

(2)另一个重要的升级是,使用层级加载。初始配置上中下三个层级,可以达到分层级布局和加载,我们逻辑里是这样的。

然而使用FrameLayout作为总布局,其层级优化为最短。

(3)这里使用了依赖导致的方式,可以每个模块自由配置布局方式。

已经封装布局加载方法

(4)自由加载模块和移除模块,随意隐藏和显示布局,这里注意需要使用自定义的findviewById方法。

(5)ModuleBus是通过方法名的注册和索引,基础的数据类型,无需在base module添加对象。

以后优化的方向

1.任意调整布局主层级。

2.模块叠加顺序调整。

详细可以查看ModuleBusEx(https://github.com/cangwang/ModuleBus/tree/ModuleBus_Ex),欢迎大家star一下。

尝试才能找到最优解。

下一节将会更精彩,敬请期待!!!

群号是316556016,也可以扫码进群。我在这里期待你们的加入!!!

相关文章

网友评论

  • b55ae2bc4c19:我曾在一个大学老教授面前说过这套框架,被数落的一无是处.这位老教授是做算法出身的.在他眼里根本不关心框架,更加注重开发时效和性能,在工作面前永远是项目驱动开发,楼主的想法很好,但是实际的大多数开发都是这样的,当你第一天晚上通宵的时候或许还能按照这样的框架思维开发,当你连续通宵第二天的时候估计什么MVPMVC什么组件化插件化都是扯淡,当你通宵第三天的时候,估计连工资都不想要了,更别谈什么框架了.一个成熟的开发模式在于保证稳定性的同时加强供扩展性,至于性能这东西就要看程序员的真本事了.楼主出书的时候建议看一下Windows的开发,就会明白为啥性能这么差了.同时也建议楼主在书中多谈程序员的沟通能力以及赶项目的经验之谈,这是程序员最缺乏的.到时候@一下小弟,新书我一定购买.
    CangWang:@b55ae2bc4c19 程序员赶项目是必然有的,为何大学教授会觉得一无是处呢,因为其关注点不同,他觉得效率很重要,正如公司老板一样,他只觉得你效率问题,但是他并不会觉得框架有多重要,因为他不了解造成他会对很多他不了解的方面产生短视。我提出这些是觉得,程序员是需要对有追求,当然效率很重要,我们要追求的是长远的效率。程序员沟通能力欠缺,因为他们没有向上管理的基础。你知道赶项目的时候漏洞百出,是因为对一些基础的认识不扎实。程序员最欠缺的不是技能上的成长,而是对自己整个操作系统的成长和升级。多谢你的支持和建议。

本文标题:[Android]如何做一个崩溃率少于千分之三噶应用app(27

本文链接:https://www.haomeiwen.com/subject/drayqxtx.html