Надеюсь, все хорошо!
Я новичок в разработке Android (около 3 недель). Мой инструктор дал мне проект, в который я должен войти, показать предметы внутри. Он предоставил мне API. Он спрашивает, что я использую MVVM и Retrofit.
Поэтому я пытаюсь войти в систему. Ответ при входе в систему:
{
"msg":"success",
"userid":"2",
"usertype":"tenant",
"useremail":"abc@xyz.com",
"appapikey":"28a013c206583bc57fc2cfa4e11dfa14"
}
Когда я делаю retrofit
, все, что он делает, это дает мне ответ, а не то, действительны ли мои учетные данные для входа или нет. В ответе есть msg
для определения успешности входа в систему или нет. Что я должен делать?
Должен ли я получить ответ, разобрать его и получить значение msg
, или я должен использовать что-то еще, например, Volley?
Это мой userLogin
метод
fun userLogin(email: String, password: String){
var apiInterface: ApiInterface = ApiClient().onRetrofitCreate()!!.create(ApiInterface::class.java)
var userCall = apiInterface.userLogin(email, password)
userCall.enqueue(object : retrofit2.Callback<JsonObject> {
override fun onFailure(call: Call<JsonObject>, t: Throwable) {
Log.e("LOGIN RESPONSE", t.message.toString())
Toast.makeText(view!!.context, "FAILED", Toast.LENGTH_SHORT).show()
}
override fun onResponse(call: Call<JsonObject>, response: Response<JsonObject>) {
var userLogin = response.body()
Log.i("USER OBJECT", response.body().toString())
var i = Intent(view!!.context, LandingActivityL::class.java)
startActivity(i)
}
})
}
Это мой модернизированный интерфейс.
interface ApiInterface {
@GET("pro_mgt_login.php?")
fun userLogin(@Query("email") email: String,
@Query("password") password: String): retrofit2.Call<JsonObject>
}
Я новый ученик, поэтому, если у вас есть какие-либо рекомендации по хорошей практике кодирования, я буду более чем счастлив узнать от вас!
Спасибо!