
修改Gradle代码来添加Kotlin Gradle插件与标准库。
在IntelliJ或Android Studio中添加Kotlin插件。
将Kotlin类文件转换成java。
原本java的项目引入Kotlin作为开发语言,在模块还没引用kotlin之前是采用databinding和ARouter进行ui绑定和模块界面跳转的,但是引入Kotlin后出现问题1:databinding冲突;问题2:ARouter提示跳转路径找不到;问题3:Android Architecture Components提示找不到ViewModelProviders
在自己的模块的gradle文件进行配置,我是在module_main模块中引入Kotlin进行开发的,所以我需要在app(module_main)build.gradle文件中添加一下配置信息有
这个仅使用与你项目本来是可以用ARouter来进行跳转的,在跳转到Kotlin的Activity时候提示找不到路径的场景。
这里需要弄清楚kapt与annotationProcessor区别可以查看 KAPT(Annotation Processing for Kotlin)是什么
google新推出MVVM+Android Architecture Components,优势在于不用管理Activity与Fragment的生命周期,当数据更新时候会自动通知到ui上,当然它这个实现还是基于观察者模式的,订阅-发布过程。作为一名优(懒)秀(惰)程序员当然要引入自己项目中啦。
问题来了,javaUI跳转到Kotlin写的UI上App闪退,项目报错信息: Failed resolution of: Landroid/arch/lifecycle/ViewModelProviders ,google了很多方法之后都没用,突然想到ARouter的解决方法,有点共同性,灵机一动,我就把上面的annotationProcessor替换成了kapt,然后项目就成功运行了。真是机(傻)智(逼)如(shi)我(wo)。其实核心问题就是没弄懂annotationProcessor的作用。想学习如何使用Android Architecture Components的童鞋可以去github的官方demo学习,链接如下 android-lifecycles
希望能帮到大家增加对android的热爱,fighting……
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)