【发布时间】:2020-07-16 16:58:49
【问题描述】:
我正在尝试使用 Kotlin Coroutines 解析 JSON 数组的 Moshi 库。
代码使用
fun retrofitIndia(baseUrl : String) : Retrofit = Retrofit.Builder()
.client(clientIndia)
.baseUrl(baseUrl)
.addConverterFactory(MoshiConverterFactory.create())
.addCallAdapterFactory(CoroutineCallAdapterFactory())
.build()
我在解析 JSON Array 的数据类时遇到问题。我对 JSON 对象使用了相同的方法,它工作正常,但在数组期间,它崩溃了 下面是崩溃线
java.lang.IllegalArgumentException: Unable to create converter for java.util.ArrayList<data.india.Delta2>
我从 Globallaunch 协程调用失败
代码:
GlobalScope.launch(Dispatchers.Main) {
val statsRequest = i.getStats()
try {
val response = statsRequest.await()
if(response.){
val statsResponse = response.body() //This is single object Tmdb Movie response
Log.i("stats",""+statsResponse)
}else{
Log.d("MainActivity ",response.errorBody().toString())
}
}catch (e: Exception){
Log.e("Exception",e.localizedMessage)
}
}
【问题讨论】:
-
您能否提供从哪一行抛出错误?还是显示完整的堆栈跟踪?
-
我有一个 jsonArray 作为要使用的 json 输出......当我从 Kotlin 协程 GlobalScope.launch(Dispatchers.Main) { val statsRequest = iservice.getStats() 调用它时,我的错误出现在这里try { val response = statsRequest.await() if(response.){ val statsResponse = response.body() //This is single object Tmdb Movie response } }
-
@AnimeshSahu:有没有从 Moshi 解析 JSONArray 的想法?
-
不认识的人,没有使用过那些库,也许悬赏这个问题,采取+1。
-
您的 JSON 响应格式(示例 json 响应)和解析器类是什么?完整的堆栈跟踪也会有所帮助..
标签: android arrays json kotlin moshi