Android ARouter 集成 注意点(Kotlin)

相关配置 及引用版本

  • Arouter 版本配置
#Arouter
arouter_group=com.alibaba
arouter_api_version=1.3.1
arouter_compiler_version=1.1.4
arouter_register_version=1.0.2

  • 项目Gradle
        ...
apply plugin: 'com.alibaba.arouter'

buildscript {
         ...
    dependencies {
         ...

        classpath "$kotlin_group:kotlin-gradle-plugin:$kotlin_version"
        classpath "$arouter_group:arouter-register:$arouter_register_version"

         ...
    }
}

...
  • Module 的 gradle 配置
apply plugin: 'com.android.library'

apply plugin: 'kotlin-android'

apply plugin: 'kotlin-kapt'

      ...

kapt {
    arguments {
        arg("moduleName", project.getName())
    }
}

dependencies {
    ...

    //ARouter
    api "$arouter_group:arouter-api:$arouter_api_version"
    kapt "$arouter_group:arouter-compiler:$arouter_compiler_version"

    ...
}

注意点:

1.使用@Autowired 注解时, 必须要在对应的Activity中 调用 ARouter.getInstance().inject(this);
2.Kotlin 代码编写的项目 在 @Autowired 标注的变量上, 还需要添加注解 @JvmField

示例代码

@Route(path = ICommBizConstants.IRouter.PATH_RELATE_INFO)
class RelatedInfoActivity : BaseActivity() {

    @JvmField
    @Autowired(name = ICommBizConstants.IParams.PARAMS_REQ_ID)
    var reqId: String? = null

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        ARouter.getInstance().inject(this);

    }
}

排查点:

1.清理本地缓存,然后重新编译(大部分情况都是缓存的问题)
2.App层 是否引入了对应的module
3.检查build->generated->source->apt(kapt)是否生成了对应的映射
4.检查每个gradle 中是否正确配置了 相应库的 引用.
5.检查 moduleName 是否正确配置
6.检查 不同module 中 activity 或者 fragment 的path 或者 group 是否有错误
7.检查使用 @Autowired标示的变量,是否是在 ARouter.getInstance().inject(this); 之前调用的(Activity 封装过的 特别要注意)

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

推荐阅读更多精彩内容

  • 组件化 模块化、组件化与插件化 在项目发展到一定程度,随着人员的增多,代码越来越臃肿,这时候就必须进行模块化的拆分...
    silentleaf阅读 4,904评论 2 12
  • 1. App项目组件化 做移动开发的同学都会发现这两年在移动开发圈子里最火的就是组件化了,组件化不同的实现方案也引...
    monkey01阅读 10,434评论 6 56
  • 作为一名大二的学长学姐,想要在这里给已经成为新生的你们提供一些简单的帮助,并且这让我感到荣幸。 你们初来乍到一个陌...
    会发声的知了阅读 345评论 0 1
  • 还没结婚的时候,小樱就知道阿峰有个红颜知己的好朋友,那个女孩叫小A,是他的小学同学,已经结婚了,用阿峰的话说,她们...
    陶都小爱阅读 432评论 8 1
  • 石林历来就有“天下第一奇观”的美称。 一进入景区,眼前的美景马上把我吸引住了。奇峰怪石,纵横交错,绿树红花,相互映...
    魔道之玉阅读 455评论 0 0