学习笔记-组件化

组件化:将一个APP拆分成多个module(一个主module和多个字module)

注意:

1. 每个字module中的类名不能重复(因为最终发布的时候是打包在同一个APP之内的)

2. 方便所有子模块的统一管理,所以要在build.grade中同统一调用变量来指定sdk版本号

3. gradle.properties中定义的参数都是String类型,所以使用的时候需要转类型例:变量名.toInteger()

4. 子模块在打包的时候需要申明成library,在codding时需要申明application,所以此时同意申明一个变量控制该module是application还是library

5. 只有申明成application时,才需要applicationId

6. 子module在coding的时候,需要有自己的androidManifest.xml,在作为library的时候又有不同的androidManifest申明,所以需要在gradle中sourceSets.mian下进行申明,例:manifest.srcFile 'src/main/manifest/AndroidManifest.xml'

7. 打包的时候就是把子module作为library引入即可

8. 子module之间的通信,通过aRunter实现(是一个library)

    此时:aRouter需要被所有的子module引用,关联了所有的module之后,需要管理所有类对象,方便互调,类对象只能有一个所以考虑单利模式,为了方便获取类对象,使用键值存取

    类对象储存,使用注解+注解处理器实现遍历所有module里的类进行循环添加

    所有的子module需要添加注解用来添加到aRouter的类对象管理集合中,然后的在调用的时候通过键从类对象集合中获取到对应class,实现跳转

9. 在项目中能用application作为context的时候绝不用activity等其他的,防止导致内存泄漏

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值