Передать текущую активность службе, чтобы служба могла управлять представлением

1

То, что я хочу сделать, - это переключить видимость элемента в моей деятельности из службы.

Как передать текущую активность моему классу обслуживания, чтобы отправлять назад функции сообщений/вызовов в свою деятельность?

Что произойдет, если пользователь выйдет из приложения, и служба все еще работает, но, очевидно, без текущей активности для вызова функций внутри?

Спасибо.

Теги:

2 ответа

3
Лучший ответ

Я не думаю, что это хорошая идея. Вот хороший ответ об уведомлении о деятельности из сервиса: Уведомлять активность из службы.

  • 0
    Хорошо, спасибо, теперь задам новый вопрос о намерениях вещания. :п
1

Чтобы ответить на ваш первый вопрос, вы не будете ничего делать с пользовательским интерфейсом от своего сервиса. У вас есть несколько вариантов взаимодействия между активностью и службой. Вы можете настроить BroadcastReceiver. Вы можете связать службу с вашей деятельностью и использовать Android AIDL для настройки обработчиков для связи. Плюс другие.

Чтобы ответить на второй вопрос - обязательно остановите свое обслуживание в методе onDestroy. В качестве альтернативы, если вы связали службу с активностью, служба остановится после завершения конечного действия, которое служба должна остановить.

  • 0
    Хорошо, я думаю, что я очень смущен! Я создал службу, чтобы пользователи могли покинуть приложение, и служба все равно будет работать в фоновом режиме. Пользователи могут вернуться к приложению и самостоятельно остановить службу с помощью кнопок в приложении. Служба загружает информацию из Интернета. Поэтому до и во время его инициализации мне нужна кнопка с надписью «Запустить службу», а когда она завершает инициализацию и идет полным ходом (загрузка информации), я хочу отправить сообщение обратно в действие, чтобы скрыть кнопку и показать ее для остановки. обслуживание.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню