用 Kotlin 编写的 Android 库,提供对 Java 应用程序的支持
Posted
技术标签:
【中文标题】用 Kotlin 编写的 Android 库,提供对 Java 应用程序的支持【英文标题】:Android library written in Kotlin, provide support for Java apps 【发布时间】:2017-07-06 18:32:15 【问题描述】:我正在用 Kotlin 编写一个 android 库。但是在用 Java 编写的 Android 应用程序中使用时,支持很差。例如,Java 中仍然需要 Kotlin 中的默认参数。另一种是,非空参数在 Kotlin 应用程序中不接受空值(编译时错误),但在 Java 中传递 null
时会引发运行时异常。我知道空检查,但它们使代码看起来很脏。
支持 Android Java 应用程序的正确方法是什么?欢迎指导,建议,示例。谢谢。
【问题讨论】:
【参考方案1】:当函数具有默认参数时,您可以使用 @JvmOverloads
注释为 Java 用户创建单独的方法。 Kotlin 中也有更多类似的对 Java 支持的增强。 Here 列出了你可以做什么。
您还可以在局部变量和字段上使用 @Nullable
和 @NotNull
注释来改进 IDE 对可空值的支持(编译器更有可能在编译时而不是运行时失败)。
当您使用 @NotNull
注释时,IntelliJ Idea 会自动为您生成不 null
检查。
【讨论】:
欣赏建议。是否有一些此类做法的汇编? @Ryan 添加了我的答案的链接。看看吧以上是关于用 Kotlin 编写的 Android 库,提供对 Java 应用程序的支持的主要内容,如果未能解决你的问题,请参考以下文章
我可以使用与 kotlin 相同的代码库创建一个 android、ios 和 web
我可以使用第三方 Java 库 (.jar) 来使用 Kotlin 进行 Android 开发吗?