У меня есть старый код Android/java, который содержит два вывода из IntentService,
и эти службы не выполняются в отдельных процессах.
Вопрос о том, как вернуть результат из этих IntentService.
Один результат возврата службы с помощью Handler + Runnable, чтобы запустить код в основном цикле:
new Handler(Looper.getMainLooper()).post(new Runnable() {
@Override
public void run() {
MyApplication.get().setFoo(someThing);
}
});
другой использует LocalBroadcastManager.getInstance(this).sendBroadcast(in); для отправки сообщения Activity и Activity подписаться через BroadcastReceiver на сообщение в onResume и отписаться в onPause.
Я прав, и в обоих случаях можно использовать LiveData для упрощения вещей?
IntentService должен создать LiveData и кому нужен результат, если observe он,
и когда новые данные поступают IntentService, следует вызвать postValue,
или могут быть некоторые рифы, чтобы предотвратить использование LiveData здесь?