Я пытаюсь обновить ProgressBar в своей деятельности.Обновление активности от службы и onResume дает различные результаты
Я настроил BroadcastReceiver, чтобы вызвать изменение.
Функция, которая делает фактическое изменение в деятельности:
private void updateStepProgress(Intent intent){
int steps = intent.getIntExtra(Keys.EXTRA_STEPS, MainApp.getInstance().daySteps);
ProgressBar progress = (ProgressBar) findViewById(R.id.progressBar);
Log.d("STEP_UPDATE_ACTIVITY", steps+"");
progress.setProgress(steps);
}
Я посылаю умысел моего объекта Application:
public void updateSteps(){
Intent intent = new Intent(StepCounterManager.UPDATE_STEP_UI_EVENT);
intent.putExtra(Keys.EXTRA_STEPS, daySteps);
Log.d("STEP_UPDATE_MAIN", daySteps+"");
sendBroadcast(intent);
}
Я звоню обновление так:
MainApp.getInstance().updateSteps();
При вызове обновления от службы отображается правильное значение, но при вызове его из Закона ivity onResume, он показывает значение, которое было там, когда активность была впервые создана.
Бревна от службы (правильные значения):
03-30 11:43:10.243 24523-24523/ee.greaton.tervis:StepServiceLock D/STEP_UPDATE_MAIN: 1255
03-30 11:43:10.248 24468-24468/ee.greaton.tervis D/STEP_UPDATE_ACTIVITY: 1255
03-30 11:43:10.442 24523-24523/ee.greaton.tervis:StepServiceLock D/STEP_UPDATE_MAIN: 1256
03-30 11:43:10.448 24468-24468/ee.greaton.tervis D/STEP_UPDATE_ACTIVITY: 1256
Бревна из onResume сразу после (1245 было значение при создании Activity):
03-30 11:43:12.049 24468-24468/ee.greaton.tervis D/STEP_UPDATE_MAIN: 1245
03-30 11:43:12.074 24468-24468/ee.greaton.tervis D/STEP_UPDATE_ACTIVITY: 1245
значение получает изменилось в onSensorChange в Служба непосредственно перед обновлением деятельности:
MainApp.getInstance().daySteps = value;
Что вызывает это и как получить правильные значения в onResume?
Итак, где/когда 'daySteps' увеличиваются? –
Добавлен вопрос. – p3rs0n