美文网首页app开发如何做一个崩溃率少于千分之三噶应用appAndroid进阶
[Android]如何做一个崩溃率少于千分之三噶应用app(9)

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

作者: CangWang | 来源:发表于2016-11-10 11:25 被阅读1963次

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

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

其实开发的初衷并没想过要使用Small插件化

但是往后面开发功能模块迭代越来越臃肿后,期望用户每次升级这么大容量的app是不科学的。

然后考虑到,我们的工程架构其实有点特殊,并不像其他单一module架构那样。

然后我们发现了Small新型的这个插件化方式,跟我们工程架构不谋而合Small地址

Small优势在于

可以先看Android 建立Small工程

(1)注意的地方建立module的时候,一定要注意lib和web、app命名是不同的。

(2)模板默认一个main的入口,需要自己再建立一个App.main的module,App.main的module移植自己的代码相当于自己原app的入口。而本来模板生成的app 模块,可以不用做任何操作。

(3)如果是需要添加成多个的Tab的Fragment,可以使用Small的接口Small.createObject

    如果有看过我第6节动态创建的内容,可以明白,我是将每一个Fragment隔离为一个module的。

(4)因为我是将每个Fragment都定义为lib的module,所以命名需要遵从Small的规范,需要命名为lib.xxx(请注意一定要遵从命名规范)

  app的asset里面bundle.json添加声明

可以看到sUris的需要重写lib的地址

createObject是通过命名查询创建的

(5)关于Activity之间的跳转

        如果是保内,直接可以使用startActivity

        如果是包之间的跳转,需要使用Small的接口

        如果跳转网页,也是需要使用Small的接口

(6)然后我们需要完成编译

       使用./gradlew buildLib编译lib的module

       使用./gradlew buildBundle编译一般的module 

       请注意,需要编译的bundle一定要在bundle.json里面声明

  (7)编译安装app这个module即可在手机上运行

***2017.3.7******

关于Small提到模板问题

在mac的模板地址在

在window下的模板地址

\Android Studio\plugins\android\lib\templates\gradle-projects

    这一节就介绍到这里。

    完成了Small的模块编译基础,之后我去写一个源码分析的相关文章,至于会踩到什么坑,我会在那边文章里面具体分析。

    这个系列的相关文章,下一节的内容先保密罗。

    敬请期待!!!

相关文章

网友评论

  • developerYk:厉害,可以学习下。感谢大神分享!
  • 宇宙只有巴掌大:微信就用了插件化技术,原理是不是和热修复的动态加载 dex 分包一个道理呢? 不明所以啊。。。
    CangWang:@宇宙只有巴掌大 并不是,热修复和热更新是两种不同的技术,请深刻理解一下
  • 冰点k:包之间activity的跳转怎么传值啊,small好像没有提供相应的方法
    CangWang:@冰点k 我不清楚你是否全部看过Small的源码,起跳转也是有通过intent的传递的。你只需要改写一下传递的值放到一个bundle的对象,然后通过放进传递的intent就可以了。可以看看我Small源码分析的文章。
  • 389aa3b58595:po主写的很容易读下去
  • 草蜢的逆袭:从头看到尾,文章写的很精彩,弱弱的问一下,案例的源码以后会分享出来吗?
    小马哥nice:@CangWang 太厉害了
    草蜢的逆袭: @CangWang 嗯,明白
    CangWang:@syusikoku 因为涉及到公司的代码,所以某些代码是无法共享的,只能共享简单的例子

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

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