我对Android和编程一般都很陌生,所以我正在玩弄不同的 教程和在这里收集的信息在stackoverflow上。让BroadcastReceiver作为服务在后台运行+启动后自动启动
我想完成的是将应用程序与我的SMS BroadcastReceiver作为服务运行,以便在应用程序处于后台时可以获取所有SMS广播。
另外,如何添加BroadcastReceiver来接收BOOT_COMPLETED的广播并自动启动应用程序?
我需要多个服务吗?或者1个服务是否足够? (用于连续检测SMS + BOOT_COMPLETED)
目前我已经创建了一个用于获取SMS的BroadcastReceiver,就像这样;
public class SMS extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
.. etc ..
.. etc ..
}
和我的AndroidManifest.xml文件有接收器和意图过滤器与 额外android.provider.Telephony.SMS_RECEIVED
获取短信播报工作正常,但我不知道在哪里可以从这里走。
所有帮助非常感谢:)
谢谢。
你知道在Android中,“服务”与Windows中的“服务”不同*对吧?运行服务不断花费电池。也许你想要的是一个IntentService,它在处理完发送给它的所有待处理的Intents(例如通过你的广播接收器)之后会自行停止。 – Fildor
是的,如果我理解正确的概念,它会消耗电池。 但我正在寻找解决方案,以便如何不断从BroadcastReceiver获取SMS。 :) – ole
如果我没有记错,系统会调用您的BroadCastReceiver。无需服务。请有人纠正我或确认这一点,因为我不是100%肯定。 – Fildor