[根据@CommonWare 的反馈修改我的问题]
我正在尝试为应用程序从外部 GPS 发射器(即,不是来自手机的 GPS)接收到的每条 SMS 消息插入一条记录到 SQLite 数据库中。所有 SMS 都由我的 BroadcastReceiver(“SMSReceiver”)处理,它在 Manifest 中注册,优先级为 999。如果 SMS 是由 GPS 设备发送的,BroadcastReceiver 会中止广播,如果不是,则将其传递。
在处理设备可能进入睡眠状态或我的进程可能被终止的可能性时,确保我的应用程序处理所有 SMS 的最佳方法是什么?”
BroadcastReceiver 文档提到“对于运行时间较长的操作,您通常将 Service 与 BroadcastReceiver 结合使用,以在整个操作期间保持包含进程的活动状态。” 这听起来像我需要的,但他们没有提供如何做到这一点的说明。任何指导,尤其是代码示例,将不胜感激。而且,就我而言,只要手机开机,“操作”就必须处于活动状态。