0

私はthingspeakを使用しており、okhttpを使用してthingspeakでjsonデータを取得することに成功しましたが、klaxonを使用して正しく解析する方法がわかりません。

ここにコードがあります

private fun funButton1() {
    println("Attempting to get JSON data!")
    val url = "https://api.thingspeak.com/channels/1029606/feeds.json?results=1"

    val request = Request.Builder().url(url).build()

    val client = OkHttpClient()
    client.newCall(request).enqueue(object: Callback {
        override fun onResponse(call: Call, response: Response) {
            val body = response.body?.string()
            println(body)
            class feeds (val field1: String)
            val result = Klaxon()
                .parse<feeds>(body.toString())

            textView.text = result
        }
        override fun onFailure(call: Call, e: IOException) {
            println("Failed to execute request!")
        }

    })

これは、thingspeak の json データです。

    {
  "channel": {
    "id": 1029606,
    "name": "LED ",
    "description": "Acts as a medium for the phone and arduino \r\nRules : 1 = LED ON 0 = LED OFF ",
    "latitude": "0.0",
    "longitude": "0.0",
    "field1": "LED STATUS",
    "created_at": "2020-04-01T17:19:03Z",
    "updated_at": "2020-04-01T17:20:39Z",
    "last_entry_id": 25
  },
  "feeds": [
    {
      "created_at": "2020-05-11T02:58:07Z",
      "entry_id": 25,
      "field1": "1"
    }
  ]
}

値が1であるfield1の値を取得しようとしていますが、愚かであるため、どのようにそれを行うべきかわかりません。しかし、誰かが klaxon を適切に使用して json データを取得する方法を教えてくれることを願っています。

4

1 に答える 1