【Android】LocalBroadcastManagerに登録されているブロードキャストはPendingIntentに対して無効です

839 ワード

【問題】
LocalBroadcastManagerに登録されているブロードキャストはPendingIntentには使用できません.getBroadcast();△放送とAlarmManagerでタイマーを書こうとしたが、放送が届かなかったことに気づいた.
【分析】
LocalBroadcastManagerが登録したブロードキャストは自分のプロセスで有効であり、AlarmManagerはシステムレベルのサービスである. A pending intent is a token that you give to another application (e.g., notification manager, alarm manager or other 3rd party applications), which allows this other application to use the permissions of your application to execute a predefined piece of code.
【解決策】
PendingIntentを使用する必要がある場所では、グローバルなダイナミックブロードキャストまたは静的ブロードキャストを使用します.
【参考資料】
Can i use AlarmManager with LocalBroadcastManager on android?
Android BroadcastReceiver - Tutorial
Global broadcast or local broadcast with PendingIntent
Can i use AlarmManager with LocalBroadcastManager on android?