Обновление Действия от сервиса, когда Активный

У меня есть приложение, где я хочу обновить Действие (Действие списка, чтобы быть точным) только, когда действие от Сервиса находится на (Активном) переднем плане

Я могу использовать Намерение ListActivity, но проблема, это поднимает действие даже когда в фоне.

Я также рассмотрел использование registerDataSetObserver на ListAdapter, но это передает под мандат тот курсор, должен быть обновлен. Обновление Курсора от внешнего сервиса не может быть выполнимым.

У нас есть универсальное решение этого?

10
задан Taranfx 12 July 2010 в 03:49
поделиться

1 ответ

Есть ли у нас общее решение для этого? ?

Возможно, их десятки. Вот несколько:

  • Пусть активность регистрирует объект слушателя в сервисе в onResume() и удаляет его в onPause()
  • Отправьте частную широковещательную рассылку, подхватывается активностью через registerReceiver(), когда она находится на переднем плане
  • Пусть активность предоставляет сервису "ожидающий результат" в стиле PendingIntent
  • Используйте ResultReceiver
  • Используйте ContentProvider, при этом активность удерживает курсор от провайдера, а сервис обновляет провайдера

Этот набор проектов демонстрирует первые три, в контексте удаленных сервисов.

20
ответ дан 3 December 2019 в 19:31
поделиться
Другие вопросы по тегам:

Похожие вопросы: