每个使用了注解的模块都需要配置注解生成器(annotationProcessor),包括Application和Library工程。
2、检查主工程Gradle插件是否配置
3、检查版本号
检查各个工程的annotationProcessor、Gradle插件、依赖的router模块版本是否一致。由于插件方案变动,各个模块版本应保持一致,配置了注解生成器的AAR建议重新打包,避免兼容问题。
5、检查注解生成器是否正常工作
1.0.x版本
- 对于源码依赖的Library模块,检查目录是否生成了Java初始化类,
build/intermediates/classes
目录是否生成Java资源文件,且内容指向Java初始化类,如图所示。 - 对于依赖的AAR模块,可以在Android Studio的External Libraries中查看AAR里是否包含这些文件。
1.1.x及以上版本
- 对于源码依赖的Library模块,检查
build/generated/source/apt
目录中是否生成了Java初始化类,如图所示。 - 对于依赖的AAR模块,可以在Android Studio的External Libraries中查看AAR里是否包含Java初始化类。
6、检查Gradle插件是否正常工作
1.0.x版本
assets是否正确生成。Gradle插件会将注解生成器生成的资源文件合并到build/intermediates/assets/{buildVariant}/wm-router/services
目录,其内容指向所有初始化类。
1.1.x及以上版本
如果还没有解决问题,可能是工程中的配置或用法不正确。通过Debugger.setLogger(logger)
配置好Logger,在LogCat中过滤WMRouter
标签查看Log。例如WMRouter在跳转过程中经过的UriHandler和UriInterceptor,如图。
8、断点调试
9、提交Issue
如果还是没能解决问题,需要帮助或发现BUG,请在Github。