退出后,Android应用程序仍在运行

时间:2010-11-29 05:35:36

标签: android

我只使用一个使用SMS_Receive Intent Filter并基于接收短信的应用程序,并且几乎没有计算,问题是回到家或者回家时,应用程序仍然响应具有特殊标签的传入SMS它显示了Android屏幕桌面的祝酒词,如何完全关闭应用程序?

2 个答案:

答案 0 :(得分:3)

您没有关闭Android应用程序。把它留给操作系统。进程保持活动状态(虽然处于休眠状态),直到操作系统决定需要更多资源。请不要试图超越它。有些应用程序会这样做,而且很糟糕。

我不明白你的意思是“应用程序仍然响应收到的短信” - 你有广播接收器吗?如果是这样,接收器始终处于活动状态。这是设计的。如果您不希望它运行,请在某处(例如SharedPreferences)存储一个标志,并在您希望广播接收器忽略广播时将其设置为false。

编辑:这实际上是一个骗局。请查看此答案以获得更优雅的解决方案:Set BroadcastReceiver to be inactive

答案 1 :(得分:1)

另一种方法是使用registerReceiver在您的活动的OnStart或OnResume方法中注册您的BroadcastReceiver,并使用unregisterReceiver在OnStop或OnPause中注销它。您可以这样做,而不是在清单中声明BroadcastReceiver。

这样,当按下时,广播接收器将在活动不可见时取消注册。