Android Studio配置Kotlin开发环境详细步骤
Android Studio配置Kotlin开发环境详细步骤
第一步:安装Kotlin插件
打开Settings面板,找到Plugins选项,点击Browse repositories(浏览仓库),输入“Kotlin”查找,然后安装即可。安装完成之后需要重启Android Studio (切记!)。
安装完成之后如下图所示。
插件当前的最新版本是1.1.2-release-Studio-2.3-3。
第二步:配置Kotlin开发环境
点击菜单栏的“Tools”选项,选择“Kotlin”,然后选择“Configure Kotlin in Project”。如下图所示。
在弹出的窗口中选择需要使用Kotlin的模块和Kotlin编译器和运行时的版本,如下图所示。
点击“OK”之后,Kotlin插件会自动开始配置。配置完成之后,同步一下工程(Sync Project)即可。
[可选]:在菜单栏中点击“Code”菜单项,选择“Convert Java File to Kotlin File”即可根据之前配置将已有的Java文件转换为Kotlin文件。
附:推荐配置
打开模块下的build.gradle文件,在apply plugin: 'kotlin-android'下面加入一行:apply plugin: 'kotlin-android-extensions'。这是一个Kotlin的扩展模块,可以让Activity自动关联xml布局中的View而不需要findViewById。
详情请参考:http://kotlinlang.org/docs/tutorials/android-plugin.html
附:使用Kotlin编写单元测试
在Android开发中免不了要进行各种单元测试,使用Kotlin编写单元测试可以简化代码,提高效率。
将工程切换到Project视图,展开模块下的src目录,这个目录下默认会有三个文件夹。main文件夹通常用来存放模块代码;androidTest文件夹通常用来存放Android相关的单元测试;test文件夹通常用来存放Java(Kotlin)相关的单元测试。
Kotlin的单元测试
在测试包下新建一个Kotlin Class,例如命名为UnitTest1。在这个类中可以编写多个测试方法,不详细叙述。
package cc.duduhuo.kotlintest import org.junit.Test import org.junit.Assert.* class UnitTest1 { @Test fun addition_isCorrect() { assertEquals(4, (2 + 2).toLong()) } }
Android的单元测试
在测试包下新建一个Kotlin Class,例如命名为AndroidTest1。在这个类中可以编写多个测试方法,不详细叙述。
package cc.duduhuo.kotlintest import android.support.test.InstrumentationRegistry import android.support.test.runner.AndroidJUnit4 import org.junit.Assert.assertEquals import org.junit.Test import org.junit.runner.RunWith @RunWith(AndroidJUnit4::class) class AndroidTest1 { @Test fun useAppContext() { // Context of the app under test. val appContext = InstrumentationRegistry.getTargetContext() assertEquals("cc.duduhuo.kotlintest", appContext.packageName) } }
附:有关Kotlin的一些有用资料Kotlin官网:http://kotlinlang.org/
Kotlin用户手册(英文):http://kotlinlang.org/docs/reference/
Kotin开源地址:https://github.com/JetBrains/kotlin
官方介绍如何开始使用Kotlin:http://kotlinlang.org/docs/tutorials/getting-started.html
与Kotlin相关一些库、框架和应用:http://kotlinlang.org/docs/resources.html
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
- spring-boot 速成(8) 集成druid+mybatis
- Java常用类(一)之Object类详解
- .NET魔法堂:工程构建基石->MSBuild
- 微信小程序能干哪些事,有什么优势?
- 如何告诉手机我是“我”呢?
- 没有任何类型 Windows 的外层实例可访问---Java内部类与外类型
- Hadoop(十二)MapReduce概述
- 安卓第一夜 第一个应用
- spring cloud 学习(1) - 基本的SOA示例
- SVN冲突
- 什么叫微信小程序分销系统?如何通过分销系统来实现你的创业梦
- Hadoop(十一)Hadoop IO之序列化与比较功能实现详解
- 安卓第五夜 维纳斯的诞生
- Eclipse中Project的Deployment Assembly(部署程序集)消失了
- java教程
- Java快速入门
- Java 开发环境配置
- Java基本语法
- Java 对象和类
- Java 基本数据类型
- Java 变量类型
- Java 修饰符
- Java 运算符
- Java 循环结构
- Java 分支结构
- Java Number类
- Java Character类
- Java String类
- Java StringBuffer和StringBuilder类
- Java 数组
- Java 日期时间
- Java 正则表达式
- Java 方法
- Java 流(Stream)、文件(File)和IO
- Java 异常处理
- Java 继承
- Java 重写(Override)与重载(Overload)
- Java 多态
- Java 抽象类
- Java 封装
- Java 接口
- Java 包(package)
- Java 数据结构
- Java 集合框架
- Java 泛型
- Java 序列化
- Java 网络编程
- Java 发送邮件
- Java 多线程编程
- Java Applet基础
- Java 文档注释
- pycharm安装及如何导入numpy
- rxjs里debounceTime operators的用法
- rxjs里delay operators的用法
- Android使用FontMetrics对象计算位置坐标
- rxjs里scan和mergeScan operators的用法
- Android自定义控件的步骤
- Android通过Socket与服务器之间进行通信的示例
- SAP Spartacus central configuration - B2cStorefrontModule
- Android自定义控件实现折线图
- 关于Angular Component changeDetection策略设置成OnPush的一个单元测试局限性
- SAP Spartacus CmsService.Components数据结构
- Android同时安装Release和Debug版本的方法
- Django 后台带有字典的列表数据与页面js交互实例
- SAP Spartacus CmsService的CmsActions.LoadCmsComponent
- SAP Spartacus OccEndpointsService单元测试的依赖注入