1

一旦我退出我的应用程序,我正试图阻止 BroadcastReceiver 出现。到目前为止,我只让它在安装应用程序时显示 Toast。它工作得非常好,除了如果我退出应用程序接收器仍然处于活动状态。这是我来自 AndroidManifest 的接收器代码:

<receiver android:name=".MyBrowdcastreceiver" android:enabled="true">
        <intent-filter>
            <action android:name="android.intent.action.PACKAGE_ADDED" />
            <action android:name="android.intent.action.PACKAGE_INSTALL" />
            <data android:scheme="package" />
        </intent-filter>
    </receiver>

我想知道我应该在我的主要活动中的 onDestroy() 或 onStop() 方法中添加什么,这将导致接收器停止。

谢谢。

4

1 回答 1

2

您已经在清单文件中注册了接收器,即使您的应用程序没有运行,它也会收到通知。您可以做两件事来满足您的需求:

  1. 您需要以编程方式注册、注销接收器。

  2. 如果应用程序正在运行,您可以将布尔值设置为 true,否则设置为 false。您可以在 BraodcastReceiver 的 onReceive() 方法中使用此布尔值,您需要检查布尔值并在布尔值为真时执行您的操作。

于 2011-09-13T07:36:22.570 回答