Модифицированный ответ становится нулевым, если введены неправильные данные - PullRequest
0 голосов
/ 16 марта 2020

в форме входа в систему -> при вводе правильных данных пользователя, таких как адрес электронной почты и пароль, он успешно переносит меня к следующему действию, но при вводе неправильных данных в ответ на запрос о модификации появляется сообщение Null

в почтальоне -> сообщение об ошибке показывает правильно, но не в приложении тост показывает ноль

вот моя деятельность:

RetrofitClient.instance.userLogin(email, password)
  .enqueue(object : Callback<LoginResponse> {
override fun onFailure(call: Call<LoginResponse>, t: Throwable) {
   Log.d("res", "" + t)
            }

 override fun onResponse(
   call: Call<LoginResponse>,
       response: Response<LoginResponse>
        ) {
            var res = response

            Log.d("response check ", "" + response.body()?.status.toString())
            if (res.body()?.status==200) {
  SharedPrefManager.getInstance(applicationContext)
                 .saveUser(response.body()?.data!!)

             val intent = Intent(applicationContext, HomeActivity::class.java)
             intent.flags = Intent.FLAG_ACTIVITY_NEW_TASK or Intent.FLAG_ACTIVITY_CLEAR_TASK
             Toast.makeText(
                            applicationContext,
                            res.body()?.message,
                            Toast.LENGTH_LONG
                        ).show()
                        startActivity(intent)
                        finish()
              } else {
                //Log.d("res", "" +  res.body()?.status.toString())
                Toast.makeText(
                applicationContext, (res.body()?.status.toString())
                            ,
                Toast.LENGTH_LONG
                 ).show()
           }

заранее спасибо, помощь будет оценена

1 Ответ

0 голосов
/ 16 марта 2020

Используйте это,

res.code()

Вместо

res.body()?.status
...