Я разрабатываю приложение для Android, которое запускает серию асинхронных сканирований датчиков, таких как получение списка MAC-адресов ближайших устройств Bluetooth, получение текущего местоположения телефона (GPS) и запись звукового образца окружающего шума. Всякий раз, когда каждое сканирование завершается, я хочу, чтобы служба обрабатывала отправку собранных данных в веб-службу (используя http и REST).
Вопрос, с которым я столкнулся, заключается в том, должен ли я реализовать свою собственную службу или использовать IntentServce для обработки нескольких запросов (намерения, отправленные с помощью startService()) для загрузки данных, потому что я хочу быть на 100% уверен, что найденные данные в конечном итоге отправляется на веб-сервис (если интернет-соединение становится доступным).
Если Android решит убить мой IntnetService или пользователь принудительно убьет его, все еще обрабатывая его рабочую очередь запросов, потеряю ли я очередь ожидающих запросов? т.е. мне нужно будет сохранять состояние рабочей очереди (и, следовательно, быть вынужденным реализовать Сервис самостоятельно без использования IntentService)?