Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/kotlin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 燃料应为Begin数组,但为Begin对象_Android_Kotlin_Deserialization_Response - Fatal编程技术网

Android 燃料应为Begin数组,但为Begin对象

Android 燃料应为Begin数组,但为Begin对象,android,kotlin,deserialization,response,Android,Kotlin,Deserialization,Response,我是Kotlin的新手,我仍在学习如何获得对象响应,但我有以下例外: com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: Expected BEGIN_ARRAY but was BEGIN_OBJECT at line 1 column 2 path $ 以下是Json结果: {"Success":"1","Message":"True","Items":[{"Id":3,"Name":"AndroidV

我是Kotlin的新手,我仍在学习如何获得对象响应,但我有以下例外:

com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: Expected BEGIN_ARRAY but was BEGIN_OBJECT at line 1 column 2 path $
以下是Json结果:

{"Success":"1","Message":"True","Items":[{"Id":3,"Name":"AndroidVersion","Value":"1"},{"Id":4,"Name":"IOSVersion","Value":"1.0"},{"Id":5,"Name":"AndroidForceUpdate","Value":"true"}]}
这是模型课

data class MobileConfiguration(
    val id: Int,
    val name: String,
    val value: String
) {


class Deserializer : ResponseDeserializable<Array<MobileConfiguration>> {
    override fun deserialize(content: String): Array<MobileConfiguration>? = Gson().fromJson(content, Array<MobileConfiguration>::class.java)
}

}

请问我做错了什么?如果有人能帮忙的话

我想问题出在模型课上。 假设
MobileConfiguration
数组直接位于response类之下,但实际上它位于
Items
对象之下

因此,不应将
数组
用作
响应对象
,而应使用其他类作为容器,如:

data class MobileConfigurationResponse(
    val success: String,
    val message: String,
    val items: Array<MobileConfiguration>
)
data class MobileConfigurationResponse(
    val success: String,
    val message: String,
    val items: Array<MobileConfiguration>
)
    val (config, err) = result.items