Android Studio是用于Android开发的最佳IDE。提供了许多插件,可以通过Android Studio本身轻松安装它们。在计算中,插件是将特定特征添加到现有计算机程序的软件组件。当程序支持插件时,它将启用自定义。插件是提高生产率和整体编程体验的好方法。有些任务很无聊,而且不那么有趣,通过使用android studio中的插件,您可以在更短的时间内完成更多工作。我们将在本文中看到的一个这样的插件是“ JsonToKotlin插件”。
Note: You may refer to the 6 Most Useful Android Studio Plugins to know the most useful android studio plugins.
关于JsonToKotlin插件
JSON到kotlin类的插件是从JSON字符串创建Kotlin数据类的插件,换句话说,是将JSON字符串更改为Kotlin数据类的插件。这样,您可以以编程方式从JSON字符串生成Kotlin数据类。支持(几乎)各种JSON库注释(Gson,Jackson,Fastjson,MoShi和LoganSquare,kotlinx.serialization(默认自定义值))。一些重要功能包括:
- 自定义自己的注释
- 使用默认值初始化属性
- 允许属性为可空(?)
- 自动确定属性为空
- 选择目标JSON库注释时,将字段名称重命名为camelCase样式。
- 将Kotlin类生成为单个类
- 将Kotlin类生成为内部类
- 格式化任何合法的JSON字符串
- 当JSON键为原始类型时生成映射类型
- 仅在需要时创建注释
- 自定义定义数据类父类
- 按字母顺序排序属性顺序
- 使关键字属性有效
- 支持从粘贴程序/本地文件/ HTTP URL加载JSON
- 支持通过扩展模块自定义自己的插件
- 普通班支持
- 动态插件加载支持
- 支持从JSONArray生成ListClass
- 复杂的JSON模式支持
JSON转换为Kotlin类是Kotlin开发人员的绝佳工具,它可以将JSON字符串转换为Kotlin数据类。该工具不仅可以理解原始类型,还可以自动创建复杂类型。它很容易访问。我们提供Windows快捷键映射ALT + K和Mac快捷键+ K,尝试一下,您将爱上它! JsonToKotlinClass只是使编程更令人愉快。
安装JsonToKotlin插件
Note: You may refer to How to Install and Uninstall Plugins in Android Studio? to Install and Uninstall Plugins in Android Studio.
步骤1:转到“文件”>“设置”>“插件”>“搜索jsontokotlin” ,如下图所示。
步骤2:按安装按钮
步骤3:获取插件后,请点击“安装”按钮进行安装。然后选择项目位置,然后右键单击该文件夹,从JSON中选择New> Kotlin数据类文件(如下图所示)
步骤4:然后代替JSON设置,提供要转换的JSON。在我们的示例中,让我们给出用于汇率的JSON示例输出,如下图所示
给出并生成文件后,我们可以看到生成了2个文件,如下图所示。这里生成两个数据类。
“ ExchangeRates ”是数据类,仅是我们指定的名称。如果我们检查JSON输出并生成数据类“ ExchangeRates”,则所有列名都将
- base->字符串数据类型,
- 日期->字符串数据类型,
- 汇率->汇率数据类型,
- time_last_updated-> int数据类型
创建起来非常容易。
Kotlin
// JSON to kotlin conversion is
// easier with JSONToKotlin plugin
data class ExchangeRates(
val base: String,
val date: String,
val rates: Rates,
val time_last_updated: Int
)
Kotlin
// In JSON, below are the currencies
// available and they are presented here
data class Rates(
val AED: Double,
val ARS: Double,
val AUD: Double,
val BGN: Double,
val BRL: Double,
val BSD: Int,
val CAD: Double,
val CHF: Double,
val CLP: Double,
val CNY: Double,
val COP: Double,
val CZK: Double,
val DKK: Double,
val DOP: Double,
val EGP: Double,
val EUR: Double,
val FJD: Double,
val GBP: Double,
val GTQ: Double,
val HKD: Double,
val HRK: Double,
val HUF: Double,
val IDR: Double,
val ILS: Double,
val INR: Double,
val ISK: Double,
val JPY: Double,
val KRW: Double,
val KZT: Double,
val MVR: Double,
val MXN: Double,
val MYR: Double,
val NOK: Double,
val NZD: Double,
val PAB: Int,
val PEN: Double,
val PHP: Double,
val PKR: Double,
val PLN: Double,
val PYG: Double,
val RON: Double,
val RUB: Double,
val SAR: Double,
val SEK: Double,
val SGD: Double,
val THB: Double,
val TRY: Double,
val TWD: Double,
val UAH: Double,
val USD: Int,
val UYU: Double,
val ZAR: Double
)
而且由于存在许多“费率”,仅是全球所有可用货币的汇率值,因此已经使用另一个数据类创建了该“费率”。
科特林
// In JSON, below are the currencies
// available and they are presented here
data class Rates(
val AED: Double,
val ARS: Double,
val AUD: Double,
val BGN: Double,
val BRL: Double,
val BSD: Int,
val CAD: Double,
val CHF: Double,
val CLP: Double,
val CNY: Double,
val COP: Double,
val CZK: Double,
val DKK: Double,
val DOP: Double,
val EGP: Double,
val EUR: Double,
val FJD: Double,
val GBP: Double,
val GTQ: Double,
val HKD: Double,
val HRK: Double,
val HUF: Double,
val IDR: Double,
val ILS: Double,
val INR: Double,
val ISK: Double,
val JPY: Double,
val KRW: Double,
val KZT: Double,
val MVR: Double,
val MXN: Double,
val MYR: Double,
val NOK: Double,
val NZD: Double,
val PAB: Int,
val PEN: Double,
val PHP: Double,
val PKR: Double,
val PLN: Double,
val PYG: Double,
val RON: Double,
val RUB: Double,
val SAR: Double,
val SEK: Double,
val SGD: Double,
val THB: Double,
val TRY: Double,
val TWD: Double,
val UAH: Double,
val USD: Int,
val UYU: Double,
val ZAR: Double
)
高级功能
- 一个人可以自定义自己的注释
- 可以使用默认值初始化属性
- 可以允许属性为空
- 可以自动确定属性为空
- 选择目标JSON库注释时,可以将属性名称重命名为camelCase样式。
- 可以生成Kotlin类作为单独的类
- 可以生成Kotlin类作为内部类
- 可以格式化任何合法的JSON字符串
- 当JSON键为原始类型时,可以生成Map Type。
- 只能在需要时创建注释。
- 自定义定义数据类父类
- 按字母顺序排序属性顺序
- 使关键字属性有效
- 支持从粘贴程序/本地文件/ HTTP URL加载JSON
- 支持通过扩展模块自定义自己的插件
让我们再考虑一个例子
JSON档案:
检查高级选项:
结果科特林课:
因此,通过使用惊人的“ JSONToKotlin”插件,可以将任何有效格式的JSON轻松转换为Kotlin数据类。对您的发展非常有帮助。高级属性有助于使用可用选项将JSON转换为kotlin,因此在开发中非常有用。