Как сохранить ResultReceiver при возвращении к активности? - PullRequest
0 голосов
/ 10 февраля 2019

У меня есть 2 действия:

  • Меню
  • ScanProgress

В ScanProgress я запускаю новый экземпляр JobIntentService, который называется ScanService:

mServiceResultReceiver = new ServiceResultReceiver(new Handler());
mServiceResultReceiver.setReceiver(ScanProgress.this);
ScanService.enqueueWork(ScanProgress.this, mServiceResultReceiver);

Затем я печатаю результаты в том же упражнении (ScanProgress):

@Override
public void onReceiveResult(int resultCode, Bundle resultData) {
    switch (resultCode) {
        case SHOW_RESULT:
            if (resultData != null)
               progressBarPB.setProgress(resultData.getInt("index"));
            break;
    }
}

Работает нормально, но когда я покидаю упражнение ScanProgress, возвращаюсь к основному действию, а затемвернуться к активности ScanProgress, индикатор выполнения сбрасывается до 0.

Я пытался использовать getIntent().putExtras() и getIntent().putExtras() или onSaveInstanceState(), но не повезло.

По-моему, чтобырешить эту проблему, мне нужно сохранить объект / экземпляр с именем mServiceResultReceiver, это правильно?Какие еще варианты я могу реализовать?

Спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...