在我的應用程序,我有一個登錄過程中,一旦你登錄,應用程序向服務器調用獲取特定數據:失敗的登錄,但僅在三星
Call<JsonObject> peticion= RetrofitClient.getRetrofitClient(InicioSesionGibActivity.this).login(imei, idCliente, user, encriptedPass);
peticion.enqueue(new Callback<JsonObject>() {
@Override
public void onResponse(final Response<JsonObject> response, Retrofit retrofit) {
String respoString=response.body().toString();
if(response.isSuccess()){
settings.edit().putBoolean("logueado", true).apply();
Call<JsonPrimitive> peticion= RetrofitClient.getRetrofitClient(InicioSesionGibActivity.this).obtenerCodOrg(settings.getString("imei", ""), settings.getString("idCliente", ""));
peticion.enqueue(new Callback<JsonPrimitive>() {
@Override
public void onResponse(Response<JsonPrimitive> response2, Retrofit retrofit) {
if (response2.isSuccess()) {
codOrg = response2.body().getAsLong();
settings.edit().putLong("codorg", codOrg).apply();
dropTables();
obtenerEntidades();
}else{
//The execution gets here
Message msg=new Message();
msg.what=1;
loginHandler.sendMessage(msg);
AlertDialog.Builder aDialog=new AlertDialog.Builder(InicioSesionGibActivity.this);
aDialog.setTitle(getString(R.string.error));
aDialog.setMessage(getString(R.string.unknownerror));
aDialog.setPositiveButton(getString(R.string.si), new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
}
});
aDialog.show();
}
}
@Override
public void onFailure(Throwable t) {
settings.edit().putBoolean("logueado", false).apply();
Message msg=new Message();
msg.what=1;
loginHandler.sendMessage(msg);
AlertDialog.Builder aDialog=new AlertDialog.Builder(InicioSesionGibActivity.this);
aDialog.setTitle(getString(R.string.error));
aDialog.setMessage(getString(R.string.neterror));
aDialog.setPositiveButton(getString(R.string.si), new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
}
});
aDialog.show();
}
});
}else{
final AlertDialog.Builder builder=new AlertDialog.Builder(InicioSesionGibActivity.this);
builder.setTitle(getString(R.string.error));
builder.setMessage(getString(R.string.loginerror));
builder.setPositiveButton(getString(R.string.accept), new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
Message msg=new Message();
msg.what=1;
loginHandler.sendMessage(msg);
editTextUsuario.setText("");
editTextPassword.setText("");
}
});
builder.create().show();
}
}
@Override
public void onFailure(Throwable t) {
Message msg=new Message();
msg.what=1;
loginHandler.sendMessage(msg);
final AlertDialog.Builder builder=new AlertDialog.Builder(InicioSesionGibActivity.this);
builder.setTitle(getString(R.string.error));
builder.setMessage(getString(R.string.loginerror));
builder.setPositiveButton(getString(R.string.accept), new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
}
});
builder.create().show();
}
});
執行在所有設備上都可以...除了我的老闆電話,三星S7(不是那種爆炸的)。如果他從APK執行它,會發生這種情況。但是,這是一個奇怪的部分,如果我拿到手機,並從Android Studio運行應用程序,那麼執行過程會很順利,而且我的數據也很好。
這使我瘋狂,因爲它很難調試。
有人遇到過這個問題嗎?
如果您需要更多數據或澄清,請詢問。
謝謝。
當您從AS運行它時,您是在運行調試還是發佈版本? –
他們兩個都運行在調試模式下,在發佈模式下工作正常。 – Fustigador