**1、**使用ARouter的時候,按照配置設置了之後使用時候遇到問題:
There is no router match! Path is …
查看了Logcat之後,發現如下的提示:
最後查找自己的項目發現build.gradle中都已經配置好了,經過查找官方github地址發現缺少混淆,因爲debug時候也是把混淆打開的,所以會一直報錯,需要在混淆文件中設置
-keep public class com.alibaba.android.arouter.routes.**{*;}
-keep public class com.alibaba.android.arouter.facade.**{*;}
-keep class * implements com.alibaba.android.arouter.facade.template.ISyringe{*;}
設置完之後就能夠正常跳轉了
2、第二個問題是在之前遇到的,就是當build.gradle中配置瞭如下的時候
//ARouter配置
javaCompileOptions {
annotationProcessorOptions {
arguments = [AROUTER_MODULE_NAME: project.getName()]
}
}
就會報錯
ARouter::Compiler >>> No module name, for more information, look at gradle log.
把AROUTER_MODULE_NAME
改成moduleName
即可
就是如下的代碼
javaCompileOptions {
annotationProcessorOptions {
arguments = [moduleName: project.getName()]
}
}