1.6开发环境搭建(Android studio)
开发Android的IDE常见的有Eclipse和Android Studio,Eclipse已经被Google抛弃,您仍然可以在EC上编写Kotlin代码,但是需要下载Kotlin的插件,具体的实现可参照官网。
Android Studio作为Google新推荐的开发Android的IDE,是基于IDEA的,最新的Android Studio(3.0)也加入了对Kotlin的支持,新版的Android Studio可在此下载。
如果你还在使用早期版本的AS,可按照下面步骤下载安装Kotlin插件 File
->Settings...
->Plugins
->Browse repositories...
搜索Kotlin
,下载安装重启IDE:
我是用Android Studio 3.0 Canary 3,创建Android项目与旧版本一样,唯一要注意的是需要勾上Include Kotlin support
加入Kotlin支持。旧版本需要创建完成后手动设置,后续再说。
一路Next
,直到最后Finish
,稍等片刻项目就创建好了,BUT,这是什么鬼?报如下错误:
Try again
也没用,上网查了下,有人说需要将项目的Build.gradle
里Kotlin的版本号1.1.2-3
改成1.1.2-4
,尝试一把,果然可以,并且在Exernal Libraries
下生成了一堆引用库,包括我们要用到的kotlin-stdlib-1.1.2-4
和kotlin-stdlib-jre7-1.1.2-4
,后面应该会改进吧。
二话不说,先运行一把:
布局预览:
Android Studio 上运行Kotlin的Android项目成功了。
下面有必要提到一个插件,有助于我们快速开发Android,忘记findViewById
吧。
Kotlin Android (Anko)扩展是一个编译器扩展, 可以让你摆脱代码中的 findViewById() 调用,并将其替换为合成的编译器生成的 属性。
在app Moudle的Build.gradle
文件加入
apply plugin: 'kotlin-android-extensions'
神奇的事情就发生了,首先我们在布局文件里新加入一个TextView命其ID为txtHelloKotlin
回到MainActivity.kt
我们直接输入txtHelloKotlin
出现这样的提示:
按键Alt+Enter
,发现多了一句引入import kotlinx.android.synthetic.main.activity_main.*
,并且txtHelloKotlin
无需再强制转换为TextView
可以直接作为TextView使用。
总的来说,app Moudle的Build.gradle
文件加入apply plugin: 'kotlin-android-extensions'
后,在Activity里直接引入import kotlinx.android.synthetic.main.<layout>.*
,其中layout
是你当前activity的主布局文件名,例如activity_main
指的是 activity_main.xml
文件。
旧版本Android Studio配置Kotlin
之前说过旧版本的AS需要下载安装Kotlin插件并重启使插件生效。我们只需要改动两个build.gradle
:
项目根build.gradle中:
buildscript {
ext.kotlin_version = '1.1.2-4' //增加
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:2.2.2'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" //增加
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
而在module的build.gradle中:
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android' //增加
android {
...
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
...
compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version" //增加
}
这样表示当前的module已经支持kotlin语言了。
最后附上示例项目Github
[上一篇:1.5开发环境搭建(JetBrains IntelliJ IDEA)] [返回目录] [下一篇:2.1数据类型(准备)]