gpt4 book ai didi

java - 应用程序关闭后广播接收器仍在运行 - Android

转载 作者:太空宇宙 更新时间:2023-11-03 11:32:05 25 4
gpt4 key购买 nike

我正在使用 this tutorial 中的一些代码关于如何接收短信:

代码运行完美,完全符合我的要求。

我有 1 个问题。

我希望我的应用程序在后台运行,但当它关闭时我希望它停止拦截短信。

我的问题是,为什么我的应用在关闭后仍然拦截短信?

我想我必须找到一个“关闭”处理程序然后关闭广播接收器。 (如果有一个“关闭”事件处理程序......?)。

如果有人能提供一些见解,我将不胜感激。谢谢!

最佳答案

通过将您的 BroadcastReceiver 放在您的 list 中,默认情况下,它始终处于 Activity 状态。因此,如果您希望它仅在显示您的 Activity 时运行,您需要在 Activity 恢复时启用/禁用您的 BroadcastReceiver/暂停:

public void onResume()
{
ComponentName component=new ComponentName(this, TextMessageReceiver.class);
getPackageManager()
.setComponentEnabledSetting(component,
PackageManager.COMPONENT_ENABLED_STATE_ENABLED,
PackageManager.DONT_KILL_APP);
}

public void onPause()
{
ComponentName component=new ComponentName(this, TextMessageReceiver.class);
getPackageManager()
.setComponentEnabledSetting(component,
PackageManager.COMPONENT_ENABLED_STATE_DISABLED,
PackageManager.DONT_KILL_APP);
}

另一种方法是在您的 Activity 中声明您的 BroadcastReceiver,然后在相同的生命周期事件。

关于java - 应用程序关闭后广播接收器仍在运行 - Android,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16429354/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com