Ответ на модификацию карты в пользовательской модели Kotlin - PullRequest
0 голосов
/ 22 января 2020

onSuccess () дооснащения

override fun onSuccess(call: Call<Any?>?, response: Response<Any?>, tag: Any?) {
        when (tag) {
            RequestCodes.API.LOGIN -> {
                val apiResponse = response.body() as? ModelAPIResponse

            val toast = Toast.makeText(
                MainApplication.applicationContext(),
                "Api Success=${apiResponse?.message}",
                Toast.LENGTH_SHORT
            )
            toast.show()}}}

Изображение тела базы данных

enter image description here

Модель для ответа API

@SerializedName("statusCode")
var statusCode: String? = null
@SerializedName("message")
var message: String? = null

Ответы [ 2 ]

0 голосов
/ 23 января 2020

Я нашел способ сопоставить ответ и сделать то же самое в IOS, который пишет маппер

  val apiResponse = ModelAPIResponse(response.body() as LinkedTreeMap<String, String>)

, затем в модели данных

class ModelAPIResponse(data: LinkedTreeMap<String, String>) {
var statusCode: String? = null
var message: String? = null

init {
    this.message = data["message"]
    this.statusCode = data["statusCode"]
}}
0 голосов
/ 23 января 2020

попробуйте сделать класс Json Response to Object следующим образом:

data class ApiResponse(
   @SerializedName("statusCode")
   var statusCode: String? = null
   @SerializedName("message")
   var message: String? = null
)

, затем при вызове модифицированного API

 @GET("your_endpoint")
    fun getCartListAsync(): Call<ApiResponse>

затем при вашем успехе измените Call<Any> на Call<ApiResponse>

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