[Android]如何做一个崩溃率少于千分之三噶应用app(1)-module工程架构&&组件化

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

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


看到这个标题,可能有人会耻笑,认为这应该很简单吧。

但是请认真思考一下啦,

你设计的app是否有经过万级的日活,十万级的日活,千万级的日活?

你设计的app是代码量是多少?你能保证你代码不停迭代,依然保持低崩溃?

你设计的app的有没有通过云测?

你设计的app的适配性和优化性是否已经达到业内领先?

产品的设计和运营是否已经达到瓶颈?


如何算崩溃呢?这里崩溃是指app被强制关闭或者app捕获异常重启。

就以现在的手机YY为例吧,他们的日活超过百万,他们的崩溃率是千分之七。

我们现在研发的app经过六个月的迭代,崩溃率却依然低于千分之三。

如何统计崩溃?一般成熟的app都会有抓log后台上传机制,这里就不过多的介绍啦。


下面属于我的观点

1.过度的代码框架设计不是好的设计,以我看来过于臃肿噶设计框架,大大降低了文件噶可读性(有时,你找一个别人写的文件都需要找半天这样效率是多低),文件命名和层级别嵌套太深。

2.需要一定基础工具类构建,而且需要这些类的扩展性很好。图片和网络类型库等等,还有定义的BaseActivity和BaseFragment。

3.很多大公司都会自己封装一些框架类,而不是用第三方的开源。这样的好处很明显,就是可以减少代码方法和避免一些不必要的适配,或者是多种库的优势的集合。但是缺点就是,可能会缺乏维护这样的框架,而且也不如成熟第三方开源更新得快。

4.是没可能完全解决耦合的,没有任何依赖是产生代码关联的,我们要只是降低代码耦合,所以现在出现了很多代码注入的框架(例如Dragger2),一些设计模式(MVP,MVVM)。


这里先说明一下,这是个持续更新的贴子,只是一些经验分享,如果有更(犀)好(利)的经(吐)验(槽)在帖子里回复。

可以给你们看一下现有的工程框架

简单介绍一下这套框架,不同于其他MVP,MVVM的代码框架。我们这套框架最主要通过功能分层。

1.base依赖于core和framework两个module

2.modules里面是有很多功能模块,都是通过独立的library,每个library都依赖于基础的base。

3.client是依赖了modules里面全部的功能library。

4.mi和baidu是属于多渠道特征加载入编译里面,也是依赖于base。


可以考虑一下这样的设计有什么特别的地方?

一个工程有多个modules的好处体现在,做业务就是功能叠加,倘若需要移除和添加功能模块,就要最低消耗下降低模块的耦合。

如果我想添加一个功能模块只需要在添加一个功能modules的libray,然后再client里添加依赖,client添加一个modules的调用入口和布局入口。(client是所有modules的调用入口,和整体布局,也是通过client来生成app),删除一个功能module也是同理。而且就算保留这些入口,直接移除modules也是不会出现崩溃的。

可以接入多个渠道的定制功能,每个渠道可以独立加入不同的模块(支付,登录,登录页特效等等)。

所有模块都可以共用core和framework提供的接口。

*2016.11.27更新

架构的示例图


****2017.3.6****

有些同学是想说崩溃率是怎么计算的,每次发版后计算  崩溃数/启动次数 

然后某直播公司的灰度是千分之三就可以发版了。



这只是个开端,如果简友有更好的框架推荐,可以留言地址,谢谢!

我建立了一个关于Android架构学习的群,里面可以进一步进行组件化学习的交流。

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

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 158,560评论 4 361
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,104评论 1 291
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 108,297评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,869评论 0 204
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,275评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,563评论 1 216
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,833评论 2 312
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,543评论 0 197
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,245评论 1 241
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,512评论 2 244
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,011评论 1 258
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,359评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,006评论 3 235
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,062评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,825评论 0 194
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,590评论 2 273
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,501评论 2 268

推荐阅读更多精彩内容