У меня есть Main-Activity, которая отображает несколько блесен.С помощью кнопки-переключателя в Main-Activity я запускаю сервис, который собирает данные GPS в фоновом режиме, который измеряет расстояние и устанавливает некоторые другие переменные.Когда я останавливаю службу другим нажатием на кнопку Toggle в Main-Activity, я останавливаю службу, поэтому в службе выполняется команда onDestroy ().В onDestroy в Сервисе я хочу отправить переменные из сервиса в уже открытый Main-Activity.Я пробовал это до сих пор безуспешно в службе:
Intent intent = new Intent(this, Main.class);
Bundle b = new Bundle();
Test = 2222;
b.putInt("Test", Test);
intent.putExtras(b);
Я не использую «startActivity (намерение);», потому что действие, при котором данные отправляются, уже открыто ...-Activity.
А на стороне Main-Activity:
Bundle b = getIntent().getExtras();
if (b != null){
Test = b.getInt("Test");
}
else{
//..oops!
Toast.makeText(Main.this, "Oops...Nothing from service! :(", Toast.LENGTH_SHORT).show();
}
Я никогда не получаю данные от службы.Я пытаюсь, потому что мне нужно запустить сервис из Main-Activity, из Main Activity пользователь останавливает сервис и получает от него значения, затем Main-Activity должен передавать значения из сервиса И с выбранного счетчикаЦенится от себя до другого вида деятельности.
Я пытаюсь сделать это уже несколько дней, и я также нахожу здесь некоторые подсказки, но пока у меня ничего не получалось.У кого-нибудь есть идеи?Должен ли я использовать Broadcast-Receiver?Какой правильный способ сделать это?