使用 Kotlin 构建的常见问题解答 | Kotlin 迁移指南 (下篇)

今年五月份的 Google I/O 上,咱们正式向全球宣布 Kotlin-first 的这一重要理念,Kotlin 将成为 Android 开发者的首选语言,十月份举办的 Android Dev Summit 2019 大会上,咱们发布了使用 Kotlin API 开发的 Jetpack Compose 开发者预览版。html

咱们于近期开始连载了关于 Kotlin 迁移指南的系列文章,帮助开发者们顺利迁移并开始使用 Kotlin 构建 Android 应用。本篇是本系列的下篇,咱们将为您解答一些使用 Kotlin 构建应用时的常见问题。android

您能够点击下面连接回顾本系列的上篇和中篇:编程

在 Android 开发中使用 Kotlin 语言的常见问题解答

Android 为什么将 Kotlin 语言列为一级支持语言?api

Kotlin 是一种与 Android 兼容的语言,它不只语法简洁、更具表达性,还具有类型安全和空值安全的特性。它与 Java 语言能够无缝互通,热爱 Java 语言的开发者能够在继续使用 Java 语言的同时,逐步加入 Kotlin 代码并充分利用 Kotlin 库,轻松完成转换。此外,许多 Android 开发者已经发现 Kotlin 不只能够提升开发速度,还能为编程带来更多乐趣,所以,咱们但愿为这些 Kotlin 用户提供更好的支持。您能够参阅 Kotlin 官方网站,详细了解 Kotlin 和 Android安全

我已经在使用 Kotlin 语言,有哪些变化值得关注?框架

短时间内您将注意到的最大变化是: Android Studio 3.0 及更高版本中包含了通过全面测试的 Kotlin 支持工具。咱们相信,这一变化将为您带来更轻松、更稳定的开发体验。异步

如何在 Android Studio 中使用 Kotlin?jvm

Android Studio 3.0 及更高版本全面支持 Kotlin。之前,您须要添加 Kotlin 插件才能使用 Kotlin;而如今,全部新发布的 Android Studio 版本中都内置了这些工具。所以,您无需执行任何额外步骤,就能够直接使用 Kotlin 文件建立新项目,将 Java 语言代码转换成 Kotlin 代码,调试 Kotlin 代码以及执行其余操做。详情请参阅 "Kotlin 使用入门"。工具

如何在 Android Studio 中调试 Kotlin 代码?性能

Kotlin 代码的调试方法与 Java 代码相同。您不须要执行任何其余操做。

IDE 还为 Kotlin 提供其余哪些类型的支持 (例如 Lint、自动填充、重构等)?

从 Android Studio 3.0 开始,咱们的 IDE 已为 Kotlin 提供全面的工具支持。可是,目前还存在一些已知问题和限制,咱们正在努力解决。

Kotlin 前景如何?

JetBrains 开发的 Kotlin 语言有着深思熟虑的设计理念,这是咱们采纳该语言的缘由之一。Google 正在与 JetBrains 开展合做,确保开发者在整个开发过程当中 (从语言到框架再到工具) 都能得到出色的体验。此外,咱们很是期待经过双方的努力,为 Kotlin 语言建立一个非营利基金会以便进行后续的开发。

Kotlin 是开源语言吗?

Kotlin 的首选许但是 Apache Software License 2.0 版 ("Apache 2.0"),Kotlin 软件的大部份内容都是根据 Apache 2.0 受权用户使用。尽管该项目将尽量遵循此首选许可,但也可能存在根据具体状况进行处理的例外状况。例如,Kotlin 使用的部分第三方依赖项可能使用不一样的开放源代码许可,但这些许可与 Apache 2 许可并不冲突。

如何在 Java 和 Kotlin 语言之间作出选择?

您无需二选一!您能够根据须要同时使用两种语言。若是您须要了解 Kotlin 是否适合本身,能够在 Android 开发中试用 Kotlin 语言,也能够参阅这些 Kotlin 资源,详细了解该语言。

我能够在 Kotlin 中调用 Android 或其余 Java 语言库的 API 吗?

能够。Kotlin 与 Java 语言具备互操做性。此设计让 Kotlin 代码能够透明地调用 Java 语言方法;对于 Kotlin 独有的功能,可采用注释轻松向 Java 代码公开。对于未使用任何 Kotlin 特有语义的 Kotlin 文件,Java 代码能够直接引用,无需添加任何注释。两相结合,您就能够同时使用 Java 代码和 Kotlin 代码。要了解详情,请参阅 Kotlin 互操做文档

大家有 Android API 的 Kotlin 参考文档吗?

有!咱们正努力使全部 Android API 文档都包含惯用 Kotlin 参考。它们还没有准备就绪,但您能够在 Android 参考概览中找到指向可用 Kotlin 参考的连接。若是您要寻找核心 Kotlin 语言参考,请查看 Kotlin 标准库参考

我能够在同一个项目中同时使用 Java 文件和 Kotlin 文件吗?

能够。您能够根据本身的喜爱或多或少采用 Kotlin 语言进行开发,而后利用 Kotlin 与 Java 的互操做性将 Kotlin 代码与 Java 代码结合在一块儿。

我能够在 Kotlin 代码中使用 C++ 代码吗?

能够,Kotlin 彻底支持 JNI。您只需使用 external 修饰符标记 JNI 方法便可。

如何将 Kotlin 代码添加到个人新项目中?

当您在 Android Studio 中建立新项目时,只需选中 Include Kotlin support 复选框便可。有关详情,请参阅 Kotlin 使用入门

如何将 Kotlin 代码添加到个人现有项目中?

在 Project 窗口中选择相应模块,而后依次选择 File > New,选择任意 Android 模板,而后选择 Kotlin 做为 Source language。有关详情,请参阅 Kotlin 使用入门

如何将 Java 语言代码转换成 Kotlin 代码?

打开 Java 文件,而后依次选择 Code > Convert Java File to Kotlin File。您也能够新建一个 Kotlin 文件 (File > New > Kotlin File/Class),而后将 Java 代码粘贴到此文件中。界面上出现提示时,点击 Yes,便可将 Java 代码转换成 Kotlin 代码。有关详情,请参阅 Kotlin 使用入门

大家会提供有关 Kotlin 的配套文档、示例、codelab 和模板吗?

为了向 Java 和 Kotlin 语言用户尽量提供最实用的帮助,咱们正在努力完善咱们的文档和教程资料。与此同时,开发者能够借助 Kotlin 与 Java 语言之间出色的互操做性,并利用相关功能在 Android Studio 中将 Java 语言代码自动转换成 Kotlin 代码。

Kotlin 在 Android 开发中能实现协程吗?能实现异步/等候吗?

Kotlin 协程目前应该能够实现,但这些特性还处于实验设计阶段。所以,Kotlin 不能保证它们将来的可用状态,Android 天然也没法作出承诺。

Kotlin 对 APK 大小/方法数有什么影响?

Kotlin 运行时会致使您的调试 APK 增长大约 7,000 个方法和约 1MB 的大小。若是您使用 Kotlin 替换项目中的另外一个库 (例如 Guava 或 RxJava),净影响可能会下降。若是您像优化其余应用代码和库同样,使用 ProGuard 对 APK 进行发布前优化,APK 的大小也会减少。

使用 Kotlin 会影响性能吗?

使用 Kotlin 不会对性能产生直接影响,但就像使用 Java 语言同样,您应该精心考虑如何使用这种语言。例如,在新的集合实例间重复复制会影响 GC 性能,调用容许非空类型的方法会致使调用空值检查方法 (固然,您能够在编译器中使用 -Xno-param-assertions 停用运行时空值检查)。

Kotlin 支持哪些 Android 版本?

全部版本都支持!Kotlin 与 JDK 6 兼容,所以使用 Kotlin 语言开发的应用能够在较早版本的 Android 上安全运行。

若是您对在 Android 开发中使用 Kotlin 有任何疑问或者想法,欢迎在评论区和咱们分享。

点击这里即刻使用 Kotlin 打造精彩 Android 应用

相关文章
相关标签/搜索