я создаю приложение, которое проверяет имя пользователя телефона (Kotlin), но я не могу получить простой json, который я проверяю с почтальоном (результат json должен выглядеть следующим образом "{" nama_hp ":" daftrogus "}", вот и все). но я не понял в чем проблема.
Я пытался смотреть учебник по YouTube, читать документацию, устанавливать любую библиотеку, которая может помочь решить, но ни одна из этих работ (4 дня пытался ее решить).
это мой интерфейс (называется myAPI)
package com.example.kpprojectlearn_secondtry.Remote
import com.example.kpprojectlearn_secondtry.Model.phoneUser
import retrofit2.Call
import retrofit2.http.*
interface myAPI{
@GET("search_phone.php")
fun showPhoneUser(@Query("no_hp")phonenumber_check: String) : Call<phoneUser>
}
это моя модель. PhoneUser класс
class phoneUser{
var nama_hp:String=""
get() = field
set(value){
field = value
}
}
это общий файл, в который я положил BASE_URL
package com.example.kpprojectlearn_secondtry.Common
import com.example.kpprojectlearn_secondtry.Remote.RetrofitClient
import com.example.kpprojectlearn_secondtry.Remote.myAPI
object Common {
val BASE_URL="http://192.168.0.106/webservicePHP/"
val api: myAPI
get() = RetrofitClient.getClient(BASE_URL).create(myAPI::class.java)
}
это функция, в которой после ввода "phonenumber_check" он установит "answer_data" для результатов json
internal lateinit var mService: myAPI
mService = Common.api
private fun showPhoneData(phonenumber_check: String){
mService.showPhoneUser(phonenumber_check)
.enqueue(object : Callback<com.example.kpprojectlearn_secondtry.Model.phoneUser>{
override fun onFailure(call: Call<com.example.kpprojectlearn_secondtry.Model.phoneUser>, t: Throwable) {
Toast.makeText(this@Mobile_Check, t!!.message, Toast.LENGTH_SHORT).show()
}
override fun onResponse(
call: Call<com.example.kpprojectlearn_secondtry.Model.phoneUser>,
response: Response<com.example.kpprojectlearn_secondtry.Model.phoneUser>
) {
if(answer_data != null) {
phonecheck_answer_box.setVisibility(View.VISIBLE)
val gson = GsonBuilder().setLenient().create()
val specificURL = gson.fromJson("nama_hp", myAPI::class.java)
val converted = specificURL.toString()
Log.e("X", converted)
answer_data.setText(converted)
} else {
phonecheck_answer_no.setVisibility(View.VISIBLE)
}
}
})
}
Я ожидаю, что textView "answer_data", измененный на результат json, как этот "daftrogus".
Спасибо