2017-01-20 8 views
0

Я использую метод OnResume() для вызова веб-сервиса каждый раз, когда я возвращаюсь к активности. Все работает отлично, когда приложение находится на переднем плане, но когда приложение переходит на задний план, иногда работает нормально но иногда это not.below мой кодВеб-вызов вызова внутри onResume() не работает должным образом

private void getRetrofit(final String searchstr){ 
    if(session.getUserRegisterID()==null){ 
     UserRegid="0"; 
    }else{ 
     UserRegid=session.getUserRegisterID(); 
    } 

    ringProgressDialog = ProgressDialog.show(this, "Please wait ...", "Loading Stores ...", true); 
    ringProgressDialog.setCancelable(false); 

    Log.e("response", "Execute1");//Up to this code is executed in issue scenario it is not entering into further and no other logs are called. 

    serviceApi = ServiceGenerator.createService(ApiInterface.class); 
    Call<okhttp3.ResponseBody> call = serviceApi.getStores(new StoreJsonObject(searchstr, SignInActivity.nwLocation.getLatitude()+","+SignInActivity.nwLocation.getLongitude() 
      , UserRegid,session.getRadiousName(),1,10,PageName)); 
    Log.e("response", "Execute2"); 
    call.enqueue(new Callback<okhttp3.ResponseBody>() { 

     @Override 
     public void onResponse(Call<okhttp3.ResponseBody> call, Response<okhttp3.ResponseBody> response) { 
      try { 
       Log.e("response", "Success"); 
      }catch (Exception e) 
      { 
       Log.e("response", "Exception"); 
       e.printStackTrace(); 
       ringProgressDialog.dismiss(); 
      } 
     } 

     @Override 
     public void onFailure(Call<okhttp3.ResponseBody> call, Throwable t) { 
      Log.e("response", "Failed"); 
      ringProgressDialog.dismiss(); 
     } 
    }); 
} 

и мой onResume() метод

@Override 
public void onResume() { 
    super.onResume(); 
    getRetrofit(""); 
} 

Учитывайте комментарий на "Log.e (" ответ " "Execute1");" линия.

+0

Какое исключение вы ожидаете выбросить из Log.e? – AnixPasBesoin

+0

У меня не было никакого исключения до этого «Log.e» («response», «Execute2»), «код детали исполняется, я просто сохранил его для моей справки вверх, где выполняется код. @ Anix –

+0

Конечно, простой журнал не бросает никаких исключений. Блок catch бесполезен. – AnixPasBesoin

ответ

1

Я столкнулся с той же проблемой и провел почти целый день, но, наконец, я попытался отключить мгновенный запуск и проблему исправлен.

+0

в студии вы разбегаетесь мгновенно? –

+0

Да, выберите Файл> Настройка> Сборка, выполнение, развертывание> Мгновенный запуск> Снимите отметку @Harikrishna –

+0

Большое вам спасибо. Ты сделал мой день .... @ piyush –