【发布时间】:2019-05-24 13:01:02
【问题描述】:
我对@987654321@ 还很陌生,我正在尝试将从HTTPRequest 获得的JsonObject 解析为data class。但我无法从 data 类中获得 Instance。
val jsonObjectRequest = JsonObjectRequest(Request.Method.GET, url, null,
Response.Listener { response ->
val text = "Response: %s".format(response.toString())
print(text)
},
Response.ErrorListener { error ->
// TODO: Handle error
}
)
@Throws(AuthFailureError::class)
@Override
fun getHeaders(): Map<String, String> {
var params = HashMap<String, String>()
if (params == null) params = HashMap()
val basicAuth = "Basic " + Base64.encodeToString("username:password".toByteArray(), Base64.NO_WRAP);
params["Authorization"] = basicAuth
//..add other headers
return params
}
TempJsonObject.instance?.addToRequestQueue(jsonObjectRequest)
数据类
data class TempJsonObject(
val content: List<Content>) {
data class Content(
val kioskId: Int,
val location: Location,
val stats: Stats,
val settings: Settings,
val modules: String,
val visibility: String
) {
data class Stats(
val allLockers: Int,
val emptyLockers: Int,
val malfunctionLockers: Int,
val forCustomer: Int,
val forCourier: Int,
val bySize: BySize,
val incoming: Any
) {
data class BySize(
val XXSMALL: Xxsmall,
val XSMALL: Xsmall,
val SMALL: Small,
val MEDIUM: Medium,
val LARGE: Large,
val XLARGE: Xlarge
) {
data class Xxsmall(
val empty: Int,
val hasContent: Int
)
...
我尝试做的方式是正确的方法吗?我做错了什么?
【问题讨论】:
-
好吧,对不起,以后不用了。
-
你能在你实际解析 JSON 的地方粘贴一段吗?我不太明白
instance?的意思。还请写下运行代码时会发生什么。 -
@PiotrK 抱歉回答太长,工作日无法访问计算机,但更新了代码。由于出现以下错误,我也无法运行代码:“未解析的引用:实例”
标签: android json kotlin android-volley data-class