プレイリストが非同期にフェッチされたら、ローカルブロードキャストを使用して、サービスによる音楽の再生を開始しています。それはうまく機能しますが、放送受信機の登録を解除する方法と時期についていくつか質問があります。私の実装では、
unregisterReceiver(BroadcastReceiver);
onDestroy()で呼び出されます。
だから私はこれについて2つの質問があります:
- アプリケーションがクラッシュした場合でも、onDestroyが呼び出されることは保証されていますか?
- メモリ/CPUの観点から使用できなくなったらすぐに放送受信機の登録を解除すると便利ですか?この特定のレシーバーは、アプリの実行ごとに最大で1回だけ必要です(サービスが開始される前にプレイリストをロードできます。その場合、ブロードキャストは必要ありません)