吾生也有涯,而知也无涯。这篇文章主要讲述使用Kotlin开发Android应用相关的知识,希望能为你提供帮助。
目标本文旨在引导开发者使用Kotlin来开发android应用。
至于Kotlin语言的语法和教程等,不在本文讨论范围,请参考以下官网文档和网上的开发教程。
- kotlin-android
- 《Kotlin for android Developers》中文翻译
- Kotlin-in-Chinese
- Kotlin 官方参考文档 中文版
- Kotlin 官方文档中文翻译版
KotlinKotlin 是一个基于 JVM 的新的编程语言,由 JetBrains 开发。
Kotlin可以编译成java字节码,也可以编译成javascript,方便在没有JVM的设备上运行。
JetBrains,作为目前广受欢迎的Java IDE IntelliJ 的提供商,在 Apache 许可下已经开源其Kotlin 编程语言。
【使用Kotlin开发Android应用】官方网站:http://kotlinlang.org/
Github仓库: https://github.com/JetBrains/kotlin
教程本节介绍如何使用Kotlin开发android应用。
以下几点需要谨记:
- 所有Kotlin类文件,以.kt为后缀。
- Kotlin的源码目录规则和默认的是一样的。分别放在src/main/kotlin, src/test/kotlin, src/androidTest/kotlin 和任意的src/${buildVariant}/kotlin。
使用Kotlin来开发android,需要经过以下几个步骤进行配置。
1.在项目根目录下的build.gradle文件中添加以下代码:
buildscript {
ext.kotlin_version = ‘1.0.1-2‘repositories {
jcenter()
}
dependencies {
classpath ‘com.android.tools.build:gradle:2.1.2‘
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
}
}
2.在模块目录下的build.gradle文件中添加以下代码:
apply plugin: ‘kotlin-android‘
apply plugin: ‘kotlin-android-extensions‘
dependencies {
compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
}
3.配置完成,你可以在src/main/kotlin目录下愉快地使用Kotlin来写Android应用了。
实例展示:
- https://github.com/JetBrains/kotlin-examples
- https://github.com/snowdream/test/tree/master/android/kotlin/HelloWorld
上面是手动给android项目增加kotlin支持。
其实还有一种自动转换的方法,也可以添加kotlin支持。
- 通过菜单“ Help | Find Action” 或者快捷键“ Ctrl+Shift+A” 调出动作查询窗口
- 输入"Configure Kotlin in Project",回车,按照提示操作,即可添加Kotlin配置。
- 重复第一步,调出动作查询窗口。输入“ Convert Java File to Kotlin File” 。即可将现有的Java文件自动转换成Kotlin文件。当然,如果只想转换某一个java文件,方法就是,打开改Java文件,然后选择菜单“ Code | Convert Java File to Kotlin File” ,即可将当前打开的Java文件自动转换成Kotlin文件。
- 转换完成。
根据个人的开发实践,总结出使用Kotlin开发Android应用的优缺点:
优点
- 和Java相比,更简洁,更安全。
- 和Java无缝集成,官网宣称kotlin可以100%和java混合使用。
- 由jetbrains推出,Idea可以更好的进行支持。
- 会将支持kotlin的相关jar包打散,打包到apk中。这部分内容最终会给apk增加700k左右的大小。这个和前面的groovy相比,情况要好很多,勉强还是可以接受的。
- 和java相比,使用Kotlin的开发者还太少。
- 诞生时间较晚,有待时间的检验。
- 使用Kotlin是可以更快,更有效地开发Android应用的。
- 在应用于生产实践之前,还需要更多的评估,包括稳定性,运行效率,耗电量,兼容性,研发的接受程度等。
- Kotlin名词解释
- Kotlin官网
- kotlins-android-roadmap
- Getting started with Android and Kotlin
- Kotlin Android Extensions
- kotlin-examples
- HelloWorld
- 如何评价 Kotlin 语言
- Kotlin:Android世界的Swift
- 初见Kotlin
- Android开发中使用kotlin你遇到过哪些坑?
推荐阅读
- Android学习笔记--使用Universal-Image-Loaderf发生OOM到解决OOM问题
- callapplybind的异同
- Android USB转串口通信开发基本流程
- 美化你的APP——从Toolbar开始
- Unity编译Android的原理解析和apk打包分析
- android横屏布局文件设置
- appium初学者,使用之检查appium环境报错Could not detect Mac OS X Version from sw_vers output: '10.12.1’,
- C++复制构造函数
- 所有新店主都需要知道的 9个 SHOPIFY 技巧