[Пересматриваю мой вопрос согласно отзыву @CommonWare]
Я пытаюсь вставить запись в базу данных SQLite для каждого SMS-сообщения, которое приложение получает от внешнего передатчика GPS (т.е. не от GPS телефона). Все SMS обрабатываются моим BroadcastReceiver ("SMSReceiver"), который зарегистрирован в манифесте с приоритетом 999. BroadcastReceiver прерывает трансляцию, если SMS было отправлено устройством GPS, и передает его, если нет.
Каков наилучший способ гарантировать, что ВСЕ SMS обрабатываются моим приложением, имея дело с возможностью того, что устройство может уснуть или мой процесс может быть прекращен?"
В документах BroadcastReceiver упоминается, что "для длительных операций вы часто будете использовать Служба в сочетании с BroadcastReceiver, чтобы активировать содержащий процесс в течение всего времени вашей операции». Это похоже на то, что мне нужно, но они не дают инструкций о том, как это сделать. Буду признателен за любые рекомендации, особенно с примерами кода. И в моем случае «операция» должна быть активной, пока телефон включен.