если вы против использования службы по какой-либо причине, вы можете отключить ее, а затем получить данные, когда пользователь вызывает приложение на первый план.
вы можете использовать функции onStart, onPause, onResume, а также создавать отдельный экземпляр приложения, поэтому при повторном запуске оно просто вытаскивает его из памяти (если Android по какой-то причине не убивает его).
Вы можете использовать текущее уведомление, чтобы предотвратить его уничтожение в фоновом режиме и moveTaskToBack.
Но, как говорит Pentium10, предполагаемый способ обработки фоновых процессов - это сервис, который собирает искомые данные, а затем, когда активность возвращается на передний план, она получает данные из сервиса и отображает их.