结合kotlin和Java开发安卓项目爬坑记录
不定期在此追加开发中遇到的问题,加深记忆。
主要内容包括但不限于java和kotlin的语言差异以及使用android-studio进行开发的一些技巧
一.在现有项目中添加Kotlin语言支持
1、在项目级build.gradle中添加以下代码
buildscript {
ext.kotlin_version='1.3.50 '
资料档案库{
谷歌() )
jcenter () )
}
dependencies {
class path ' com.Android.tools.build : grad le :3.5.1 '
添加插件
class path ' org.jetbrains.kot Lin : kot Lin-grad le-plugin 3360 $ kot Lin _ version '
}
}
2、在module级别的build.gradle中添加以下代码
//这个必须追加
应用插件: ' kot Lin-Android '
//根据需要进行添加,以便项目可以使用类似于Dagger和Data Binding的库。
//https://www.kotlincn.net/docs/tutorials/Android-frameworks.html
应用插件: ' kot Lin-kapt '
//如果根据需要进行添加,kotlin将支持视图绑定。 例如,可以直接使用layout的id设置具体值,然后单击,
不需要使用findViewById或butterKnife,可以直接使用xml的Id名
应用插件: ' kot Lin-Android-extensions '
3、在module级别的dependencies中添加以下代码
//根据需要添加指定的kotlin标准库依赖关系
//相关说明https://www.kotlincn.net/docs/reference/using-grad le.html
implementation ' org.jetbrains.kot Lin : kot Lin-stdli B- JDK 8: $ kot Lin _ version '
如果项目需要修复butterknife和glide相关的依赖关系(使用annotationProcessor ),则会出现兼容性问题
纯粹的java开发
annotation processor ' com.Jake Wharton : butter knife-compiler : $ root project.butterknifeversion '
annotation processor ' com.github.bump tech.glide : compiler 3360 $ root project.glide version '
java kotlin混合开发
kapt ' com.Jake Wharton : butter knife-compiler : $ root project.butterknifeversion '
kapt ' com.github.bump tech.glide : compiler : $ root project.glide version '
4、开发前的准备工作大致是以上三个步骤,后续内容是开发中的一些问题和技术记录。
注:在首次部署中,由于没有将annotationProcessor更改为kapt,导致使用butterKnife的地方被破坏,时间长了也无法解决,项目进度加快,放弃了kotlin的部署。 另外,kotlin和java的兼容性问题,以及学习成本高的话可能会影响开发的进度。 经过众多开发者的安利才坐上车,部分功能通过kotlin实现。