3

通知の却下にどのように対応できますか? 特定の通知がキャンセルされたときに、バックグラウンド プロセスを強制終了する必要があります。

このスレッドでは、ブロードキャストレシーバーを使用すると書かれていますが、通知用のインテントフィルターはありません

通知 deleteIntent が機能しない

4

1 に答える 1

8

クラスを手動でトリガーするようにインテントを定義する場合、ブロードキャストを取得するためにインテント フィルターは必要ありません。

BroadcastReceiverを実装するだけです

public class NotificationDeleteReceiver extends BroadcastReceiver {
    @Override
    public void onReceive(Context context, Intent intent) {
        // kill service here
    }
}

そして、Receiver を AndroidManifest.xml に追加します。

<receiver android:name="NotificationDeleteReceiver" />

次に、PendingIndent を通知に設定します。

notification.deleteIntent = PendingIntent.getBroadcast(
    this, 0, new Intent(context, NotificationDeleteReceiver.class), 0);

これは機能します。

于 2013-09-07T12:19:16.270 に答える