HTTP-запросы не работают на Kotlin в AndroidStudio - PullRequest
0 голосов
/ 29 мая 2020

У меня проблема в Kotlin в Android Studio. HTTP-запросы у меня не работают, и я пробовал использовать библиотеки Fuel и Volley. Я добавил строку <uses-permission android:name="android.permission.INTERNET" /> в файл AndroidManifest.xlm.

Код залпа:

val queue = Volley.newRequestQueue(this)
        val url = "http://drevo.kybernado.com/app/get_count.php?code=200528-0961"

        val stringRequest = StringRequest(
            Request.Method.GET, url,
            Response.Listener<String> { response ->
                Toast.makeText(this, "Response is: ${response.substring(0, 500)}", Toast.LENGTH_SHORT).show()
            },
            Response.ErrorListener {
                Toast.makeText(this, "That didn't work!", Toast.LENGTH_SHORT).show()
            })

        queue.add(stringRequest)

Код топлива:

Fuel.get("http://drevo.kybernado.com/app/get_count.php?code=200528-0961")
            .response { request, response, result ->
                println(request)
                println(response)
                Toast.makeText(this, response.toString(), Toast.LENGTH_SHORT).show()
                val (bytes, error) = result
                Toast.makeText(this, result.toString(), Toast.LENGTH_SHORT).show()
                if (bytes != null) {
                    println("[response bytes] ${String(bytes)}")
                    Toast.makeText(this, String(bytes), Toast.LENGTH_SHORT).show()
                }
            }

В залпе всегда выдается ошибка а в Fuel нет никаких признаков активности - тостер не выскакивает. Вы знаете, почему он так себя ведет? Спасибо

PS: Я новичок в Kotlin и Android Studio, но не в программировании.

1 Ответ

0 голосов
/ 29 мая 2020

Лучше использовать этот RetrofitApi без сопрограмм, где ваш BASE_URL - «http://drevo.kybernado.com/app/», а ваш GET_VALUE - «get_count. php» и добавьте параметр кода в интерфейсе fun get(@Query("code") code: String): Call<String>, вы должны передать этот параметр в вызове get Api.retrofitService.get("200528-0961").enqueue( object: Callback<String>

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...