1

AlaramManager を介してインターラルを使用して PendingIntent を設定するアクティビティがありますが、時々見られるように、インテントを変更すると、レシーバーはまだ余分なデータを含む古いインテントを取得しており、問題が発生する可能性があります。

それは可能であり、この状況を回避する方法はありますか?

申し訳ありませんが、このケースに関する十分な情報が見つかりません。前もって感謝します!

Intent intent = new Intent(context, PollingService.class);
    intent.setAction(PollingService.ACTION_POLL);

    pendingIntent = PendingIntent.getService(context, 0, intent, PendingIntent.FLAG_CANCEL_CURRENT);
    alarmManager.setInexactRepeating(AlarmManager.ELAPSED_REALTIME, Constants.ALARM_TRIGGER_AT_TIME, Constants.ALARM_INTERVAL, pendingIntent);
4

1 に答える 1

1

それは難しい質問です。私が理解していることから、一部の Intent オブジェクトは「スティッキー」になる可能性があります。それらがいくつかの方法で持続できるようにします。この場合、アプリのアクティビティやサービスからのものではなく、システム サービスを使用しているため、それらを殺すことはないと思います。コマンド プロンプトで adb uninstall (パッケージ名) コマンドを使用して、デバイスからアプリを完全に削除します。

于 2012-07-10T15:05:09.113 に答える