Я хочу создать приложение, которое содержит Обслуживание S и Действие A. Сервис S ответственен за предварительную обработку, таков как подготовка данных, показанных на UI Действия A, прежде чем Действие A будет вызвано.
Я хочу смочь вызвать Service S снаружи пакета, сказать от класса B Действия другого приложения для Android, сделать предварительную обработку, и затем когда данные готовы, вызовите Activity A.
Мои вопросы:
Спасибо Chris
Как лучше всего обмениваться данными между Service S и Activity A?
Использовать шаблон локальной привязки и связать Activity A со службой S, а затем вызвать открытый API службы, чтобы получить все, что необходимо.
Как может внешняя деятельность B общаться с Сервисом S, чтобы определить, завершено ли оно со всеми его предварительная обработка, а действие A готов к вызову?
Используйте шаблон удаленной привязки и AIDL. Действие B будет регистрировать определенный AIDL обратный вызов в службе S, которую служба будет вызывать при необходимости. См. здесь и здесь в качестве примера.