Способ, которым я делал это в прошлом, состоит в том, чтобы использовать широковещательную рассылку сообщения от службы, чтобы у Activity было прослушивание BroadcastListener для этого сообщения. Полезная нагрузка сообщения может содержать значение индикатора выполнения.