Kotlin做为一门编程语言,已经出现好几年了,但此前在国内并不闻名。自从5月份谷歌宣布它成为Android的官方开发语言之后,Kotlin猛然窜红了,虽说短期内Kotlin无法取代Java,但对于一门新技术,我们还是有必要好好学习。
谷歌号称从Android Studio 3.0开始完全支持Kotlin,可是Android Studio目前的稳定版还是2.3,所以本文仍然以Android Studio 2.3为基础,讲述如何基于Android Studio搭建Kotlin的开发环境。
首先要下载并安装Android Studio 2.3,如果你还没使用该版本的Android Studio,可前往Android官网获取安装包,下载页面是https://developer.android.google.cn/studio/index.html,安装及使用教程见《Android Studio开发实战:从零基础到App上线》一书。如果Android Studio是从低版本升级到2.3,可能会出现编译问题,具体解决办法参见博文《Android Studio升级到2.3的编译问题解决办法》。
安装完了Android Studio 2.3,还要另外安装Kotlin插件。依次选择菜单“File”——“Settings”,在弹出的页面窗口中选择“Plugins”——“Browse repositories...”,如下图所示:
然后会弹出插件库的浏览窗口,在该页面左上角的搜索框中输入“Kotlin”,下方的插件列表会定位到符合搜索条件的插件位置,单击“Kotlin”(LANGUAGES)这行,窗口右侧就展示Kotlin插件的详细信息,如下图所示:
从图中看到Kotlin的最新版本是6月13日发布的1.1.2版,单击这里的“Install”按钮执行安装操作,接着Android Studio开始自动下载Kotlin插件,下载过程如下图所示:
等待Kotlin下载并安装完毕,此时原来的“Install”按钮,变为“Restart Android Studio”,提示需要重启Android Studio使新插件生效,如下图所示:
根据提示关闭Android Studio再打开它,即可在Android Studio使用Kotlin插件了。不过若要进行Kotlin的编码开发,还得对编译配置文件作如下修改:
1、打开项目的build.gradle,分别设置Kotlin的版本号与插件路径,修改后的编译配置如下:
buildscript {
//指定kotlin插件的版本
ext.kotlin_version = "1.1.2"
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:2.3.0'
//指定kotlin插件的路径
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
}
}
2、打开模块的build.gradle,在文件开头应用Kotlin插件,即添加下面这行:
apply plugin: 'kotlin-android'
接着在dependencies节点下添加如下一行,表示把kotlin插件编译进本模块:
//把kotlin插件编译进来
compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
改完了编译配置文件,最后来试试Kotlin到底能不能用。假设读者目前还没有Kotlin基础,那么按照App开发的常规流程,先创建一个新模块,依次选择菜单“File”——“New”——“New Module”,然后一路单击“Next”按钮完成模块创建。接着打开MainActivity.java,这个文件的内容再熟悉不过了,就是最简单的几行Java代码,如下所示:
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
}
现在我们要移花接木,把Java代码转换为Kotlin代码。先选中MainActivity.java,再到主界面上依次选择菜单“Code”——“Convert Java File to Kotlin File”,菜单位置如下图所示:
代码转换完毕,原来的MainActivity.java变成了MainActivity.kt,文件内容也变成了如下所示的Kotlin代码:
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
}
}
看起来,这个Kotlin的语法与Java似曾相识,但又有所不同。若想解释Kotlin的详细语法规则,势必要写一大本的长篇大论,所以这里不管三七二十一,先把demo跑起来再说,依次选择菜单“Run”——“Run 'hello'”启动应用,正常的话即可在接入的模拟器或者真机上看到“hello world”,如下图所示:
怎么样,这可是一个货真价实的用Kotlin开发的App噢,都说万事开头难,搭建好Kotlin的开发环境,只是万里长征的第一步,在下一篇文章中,我们将继续学习如何使用Kotlin进行Android开发。