Android 使用Kotlin中的改装无法获得成功响应

Android 使用Kotlin中的改装无法获得成功响应,android,kotlin,retrofit2,Android,Kotlin,Retrofit2,我是科特林的新手。我试图在改型的帮助下调用API,URL是向我发送响应,但我在response.body()中犯了错误。?价值不会到来 我的JSON响应:- { "data": { "type": "accounts" "attributes": { "payment-type": "prepaid" } }, "included": [ { "type": "a"

我是科特林的新手。我试图在改型的帮助下调用API,URL是向我发送响应,但我在
response.body()中犯了错误。
?价值不会到来

我的JSON响应:-

{
 "data": {
 "type": "accounts"
 "attributes": {
        "payment-type": "prepaid"
        }
  },
  "included": [
              {
               "type": "a"
               "attributes": {
                   "msn": "0468874507"
                  }
               },
               {
                "type": "b"
                "attributes": {
                     "msn": "38593"
                    }
               }
       ]
}
在DataApi.kt中

interface DataApi {

    @GET("dbnjg")
    fun getDataList(): Call<ArrayList<DataValue>>
}
在MainActivity中,我试图获得响应,但无法获得响应。我哪里做错了什么或犯了错误

MainActivity.kt

val apiInterface: DataApi = ApiClient().getApiClient()!!.create(DataApi::class.java)

    apiInterface.getDataList().enqueue(object : Callback<ArrayList<DataValue>> {
        override fun onResponse(call: Call<ArrayList<DataValue>>?, response: Response<ArrayList<DataValue>>?) {
            Toast.makeText(baseContext, ""+response?.body()!!, Toast.LENGTH_LONG).show()
            dataValue = response?.body()!!
        }

        override fun onFailure(call: Call<ArrayList<DataValue>>?, t: Throwable?) {

        }

       })
val-apinterface:DataApi=ApiClient().getApiClient()!!。创建(DataApi::class.java)
apiInterface.getDataList().enqueue(对象:回调{
覆盖fun onResponse(调用:调用?,响应:响应?){
Toast.makeText(baseContext,“+response?.body()!!,Toast.LENGTH\u LONG.show())
数据值=响应?.body()!!
}
覆盖失效时的乐趣(调用:调用?、t:可丢弃?){
}
})

如下更改您的接口DataApi:

interface DataApi {
    @GET("dbnjg")
    fun getDataList(): Call<DataValue>
}
接口数据API{
@获取(“dbnjg”)
fun getDataList():调用
}
并按如下方式调用您的api:

 apiInterface.getDataList().enqueue(object : Callback<DataValue> { 
    override fun onResponse(call: Call<DataValue>?, response:Response<DataValue>?) {
        Toast.makeText(baseContext, ""+response?.body()!!, Toast.LENGTH_LONG).show()
        dataValue = response?.body()!!
        val includedList=dataValue.included
    }

    override fun onFailure(call: Call<DataValue>?, t: Throwable?) {

    }

   })
apiInterface.getDataList().enqueue(对象:回调{
覆盖fun onResponse(调用:调用?,响应:响应?){
Toast.makeText(baseContext,“+response?.body()!!,Toast.LENGTH\u LONG.show())
数据值=响应?.body()!!
val includedList=dataValue.included
}
覆盖失效时的乐趣(调用:调用?、t:可丢弃?){
}
})

如下更改您的接口DataApi:

interface DataApi {
    @GET("dbnjg")
    fun getDataList(): Call<DataValue>
}
接口数据API{
@获取(“dbnjg”)
fun getDataList():调用
}
并按如下方式调用您的api:

 apiInterface.getDataList().enqueue(object : Callback<DataValue> { 
    override fun onResponse(call: Call<DataValue>?, response:Response<DataValue>?) {
        Toast.makeText(baseContext, ""+response?.body()!!, Toast.LENGTH_LONG).show()
        dataValue = response?.body()!!
        val includedList=dataValue.included
    }

    override fun onFailure(call: Call<DataValue>?, t: Throwable?) {

    }

   })
apiInterface.getDataList().enqueue(对象:回调{
覆盖fun onResponse(调用:调用?,响应:响应?){
Toast.makeText(baseContext,“+response?.body()!!,Toast.LENGTH\u LONG.show())
数据值=响应?.body()!!
val includedList=dataValue.included
}
覆盖失效时的乐趣(调用:调用?、t:可丢弃?){
}
})

那么,您是否收到任何错误?您的json响应是一个JSONObject,而在调用过程中,您正在传递一个数组列表……只需更改为在DataApi中调用即可Interface@nik谢谢你的工作,你也可以使用这个插件为kotlin生成responseClass……好吧,那么,您是否收到任何错误?您的json响应是一个JSONObject,而在调用中,您正在传递一个数组列表……只需更改为在DataApi中调用即可Interface@nik感谢您的工作,您也可以使用此插件为kotlin生成responseClass。。。。。。。