如何使用Kotlin进行Android开发
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何使用Kotlin进行Android开发相关的知识,希望对你有一定的参考价值。
在Android Studio中打开Settings,选择Plugins选项,点击Browse Repositories,在打开的新窗口中搜索Kotlin,如下图所示。
选择Kotlin与 Kotlin Extenslons For android(obsolete)两个插件分别进行下载安装。当插件安装完毕后,重启Android Studio即可。
在Android Studio中使用Kotlin插件
打开Android Studio新建一个项目,和往常一样建立一个项目就可以了,项目建立好以后,我们会在右键菜单New下看到多出来Kotlin File/Class和Kotlin Activity两个选项。
- Kotlin File/Class:一个普通的Kotlin类,类似普通的Java类
- Kotlin Actiivty:一个Activity类
参考技术A as3.0FAQ | 使用 Kotlin 进行 Android 开发
自从 2017 年我们宣布支持 Kotlin 以来,收到了很多关于使用 Kotlin 进行 Android 开发的问题: 大家想知道现在是否适合学习 Kotlin,是否要在应用开发中引入 Kotlin,学习 Kotlin 的最佳课程或教程是什么,Google 内部是否在使用 Kotlin,以及我们对 Java 编程语言的规划是怎样的?本文将一一作答。
问: 是否应该学习 Kotlin 进行 Android 开发?
最常提及的问题大都围绕同一个话题:
"对于初学者,应该选择学习 Kotlin 还是 Java 编程语言?"
"如果已经掌握了 Java 基础知识,现在适合改用 Kotlin 进行 Android 开发吗?"
"对于资深 Java 开发者如果学习 Android 开发,推荐直接上手 Kotlin 还是使用 Java 入门呢?"
简单来说:
是的!开始学习和使用 Kotlin 吧!
展开来回答:
Kotlin 与 Android
2017 年,我们在 Google I/O 大会上宣布支持 Kotlin。从那时起,我们开始着手确保我们的 API、文档和示例适用于 Kotlin。2019 年,Kotlin 成为 Android 开发的首选语言,这让我们开始更加依赖于 Kotlin 的功能。例如,协程成为我们实现异步操作的推荐方案。
我们还做了以下工作:
Kotlin 优先库
首先在若干 Android Jetpack API (如 Room、LiveData、ViewModel 和 WorkManager) 中,我们增加了对 Kotlin 协程的一流支持,从而转变了在 Android 上执行异步操作的方式。Firebase Android SDK 和许多 Jetpack 库都具有 Kotlin 扩展库 (KTX),通过 Kotlin 使用起来更加流畅。
Kotlin 扩展库
https://developer.android.google.cn/kotlin/ktx
现在,我们的很多库都优先使用 Kotlin,如 Paging 3.0 和 DataStore。Jetpack Compose 是全新的、独立的、声明式 UI 工具包,它从头到尾使用 Kotlin 编写。
Jetpack Compose
https://developer.android.google.cn/jetpack/compose
工具
开发效率源自强大的工具。因此,我们对编译工具链做了很多针对 Kotlin 的改进,包括对 Kotlin JVM 编译器的改进、针对 Kotlin 的 R8 优化,甚至还开发了 Kotlin Symbol Processing 等新工具。我们添加了内置 Android Kotlin Live 模板,供您使用简写语法将常见的 Android 代码结构应用到 Kotlin 代码。同时,针对 Kotlin 的 Lint 检查可帮助您确保 Kotlin 代码更符合语言习惯。该工具在您从 Java 编程语言过渡到 Kotlin 时尤其有用。
Kotlin Symbol Processing
https://github.com/google/ksp
问: Google 内部是否在使用 Kotlin?
在 Google 内部,我们也在着力推广使用 Kotlin。我们有超过 60 个应用 (如 Google Home、Drive、Maps 等) 已将 Kotlin 添加到代码库中。我们庞大的内部代码库中已有超过 200 万行 Kotlin 代码。
问: 是否应该将应用迁移到 Kotlin?
我们经常收到这一问题,但最终的答案因人而异。如果您对当前的代码库和技术栈感到满意,能熟练使用您的解决方案来管理异步任务,并且具有高效的错误捕获方法,那么迁移到 Kotlin 对您来说可能不是合适的解决方案。
如果您在试用 Kotlin 之后或通过下文提到的一些课程学习该语言之后,很喜欢它的效果,而且希望充分利用最新的 Jetpack API,那么您应该考虑将 Kotlin 加入到应用开发中。Kotlin 的一大优势在于它与 Java 有很好的互操作性。您可以循序渐进地采用 Kotlin,比如可以首先在测试中试用,然后在新功能中试用,在慢慢接触的过程中,再尝试转换部分旧代码。
着手迁移到至 Kotlin,请查阅 Codelab 教程 - 转换到 Kotlin:
https://codelabs.developers.google.cn/codelabs/java-to-kotlin#0
问: Java 编程语言在 Android 开发中将如何发展?
我们在 Java 的基础上增加了对 Kotlin 的支持,因为这两种语言都可以编译成相同的字节码,并且可以共存。我们喜欢 Kotlin 是因为用它编写代码更易于表达、更安全,同时我们也会继续维护并推动对 Java 语言的支持。例如,在 Android 11 中,从 OpenJDK 的较新版本一直到版本 13,我们增加了对许多 API 的支持,Android Studio 甚至支持在所有 Android 设备上使用其中一些 API,而不受操作系统版本的限制。查阅文章,进一步了解对 OpenJDK 中新 API 的支持情况:
https://medium.com/androiddevelopers/support-for-newer-java-language-apis-bca79fc8ef65
维护并推动对 Java 语言的支持
https://developer.android.google.cn/studio/write/java8-support
问: 学习 Kotlin 的最佳途径是什么?
采纳一门新语言并非易事,但我们正努力使其尽可能简单:
首先从培训课程开始,这些课程面向所有开发者,涵盖初学者到专业开发者。既包含面向没有编程经验的初学者新开设的在线课程使用 Kotlin 构建 Android 应用的基础知识,也有讲解如何使用协程的高级教程,帮助您提升使用 Kotlin 进行 Android 开发的技能。
我们的所有文档页面都包含 Kotlin 代码段,方便您比较以两种语言运行 API 的效果,并且所有示例都有 Kotlin 版本。
您可以查看文章,观看视频,从中学习各种 Kotlin 主题的内容。
对于想要改用 Kotlin 的开发者和团队,请访问官方文档了解相关的指南。
培训课程
https://developer.android.google.cn/kotlin/campaign/learn
使用 Kotlin 构建 Android 应用的基础知识
https://developer.android.google.cn/courses/android-basics-kotlin/course
使用协程
https://developer.android.google.cn/codelabs/advanced-kotlin-coroutines#0
示例
http://github.com/android
文章
https://medium.com/androiddevelopers/tagged/kotlin
视频
https://www.youtube.com/c/AndroidDevelopers/search
改用 Kotlin
https://developer.android.google.cn/kotlin/add-kotlin
开发者
https://developer.android.google.cn/kotlin/learn
团队
https://developer.android.google.cn/kotlin/adopt-for-large-teams
官方文档
https://developer.android.google.cn/kotlin
自从 3 年前正式增加对 Kotlin 的支持以来,我们一直在加大力度对这一出色的语言和生态系统进行支持。我们携手 JetBrains 一起为 Kotlin 建立了坚实的基础,确保该语言健康发展,例如,通过谨慎的流程来审核重大变更。我们的贡献不止于此: Google 内部有一支专职研究 Kotlin 编译器的工程师团队;我们正在构建的 Jetpack API 不仅支持 Kotlin,而且以 Kotlin 为首选语言;我们还致力于为使用 Kotlin 进行 Android 开发提供无缝的体验。
Java 是 Oracle 公司和/或其子公司的注册商标。
推荐阅读
如页面未加载,请刷新重试
点击屏末 | 阅读原文 | 即刻使用 Kotlin 开发 Android 应用
以上是关于如何使用Kotlin进行Android开发的主要内容,如果未能解决你的问题,请参考以下文章
如何在android Studio中更改Kotlin android项目的名称[重复]