我正在開始學習Android開發,目前我正專注于如何消費REST API。我正在試驗的服務(The Movie Database)提供了如下形式的回應:
{
"certifications"/span>: {
"CA": [
{
"認證": "G",
"含義"。"All ages.",
"順序": 1。
},
...
],
"NL": [
{
"認證": "AL",
"含義"。"所有年齡。"。
"順序": 1。
},
...
],
...
}
}
串列中包含相當長的物件串列(CA、NL、EN等),但所有這些物件都包含相同的東西--結構完全相同的物件串列。我嘗試過的任何在線JSON到Kotlin類的轉換器都希望為每個物件創建單獨的類,這對我來說似乎很浪費。
我目前有這樣的類:
class Certifications {
var certifications: List<Country>? = null
}
class Country{
var country: = null
var ratings: List<Certification>? = null
}
class Certification{
var certification: = null var certification: String?
var meaning: String? = null
var order: Int = 0
}
嘗試這樣做 val thing = gson.fromJson(body, Certifications::class.java)結果是 預期是BEGIN_ARRAY,但在第1行第20列路徑$.certifications處是BEGIN_OBJECT.
uj5u.com熱心網友回復:
這 :
class Certifications {
var certifications: List<Country>? = null
}
應該是這樣的:
class Certifications {
var certifications: Map<String, <List<Certification>>? = null
其中String是代碼"NL" & "CA" - 或者如果你已經有一個自定義型別配接器,你可以做Map<Country, <List<Certification>> - 但我不確定你是否有這個設定。
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/309941.html
標籤:
