0
我創建更新接口
public interface UserService {
@GET(Constants.Api.URL_LOGIN)
Call<String> loginUser(@Query("email") String email, @Query("password") String pass, @Query("secret") String secret, @Query("device_id") String deviceid, @Query("pub_key") String pubkey, @Query("device_name") String devicename);
當活動我打電話
final Call<String> responce = service.loginUser(loginedt.getText().toString(), md5(passwordedt.getText().toString()), secret, device_id, pub_key, device_name);
responce.enqueue(new Callback<String>() {
@Override
public void onResponse(Response<String> response) {
if (response.code() == Constants.Status.ERROR_404) {
Toast.makeText(LoginActivity.this, getResources().getString(R.string.wrong_log_pass), Toast.LENGTH_LONG).show();
} else if (response.code() != Constants.Status.ERROR_404 && response.code() != Constants.Status.SUCCES) {
Toast.makeText(LoginActivity.this, getResources().getString(R.string.wrong_request), Toast.LENGTH_LONG).show();
} else {
startActivity(new Intent(LoginActivity.this, MainActivity.class));
}
}
@Override
public void onFailure(Throwable t) {
t.printStackTrace();
}
});
我得到錯誤 onFailure處 java.lang.IllegalStateException:期望一個字符串,但是BEGIN_OBJECT在第1行第2列路徑$
通常這些類型的錯誤是因爲GSON的返回不能從你的對象分析你的JSON。將您的模型發佈給用戶。讓我們看看是否一切正確 – acostela
我不發佈任何對象。僅查詢@Query字符串 – androidAnonDev
我不確定100%,但我認爲您需要實體類才能使用改進。原因是內部它使用Gson,如果你沒有任何實體類Retrofit不知道如何解析POST,GET數據 – acostela