簡體   English   中英

通過清單注冊的廣播接收器是否在應用關閉時自動注銷?

[英]is the broadcast receiver registered via manifest is automatically unregister on app close?

我一直在通過清單注冊廣播接收器。 申請結束后,此廣播接收器是否會自動注銷,還是必須手動注銷? 如果我們不手動注銷它,會導致內存泄漏嗎?

清單中聲明的​​Android BroadcastReceiver不會自動取消注冊。 即使應用未運行,也可以觸發這些事件(這也是預期的行為)。 觸發BroadcastReceiver ,將調用onReceive回調方法。 廣播僅在執行onReceive方法期間處於活動狀態。 一旦返回該方法,接收方將被視為無效。 因此,如果要聲明可以始終觸發的BroadcastReceiver (即使應用未運行),也可以在清單中聲明它。 而且您不必擔心其生命周期。

但是,如果您要聲明只在特定時間段內(例如,當應用程序正在運行或活動正在運行時)才接收廣播的廣播,則最好在需要時注冊該廣播,並在需要時注冊該廣播。工作完成了。 例如,如果只想在活動運行時接收廣播,則可以在onCreate方法中注冊,而在onDestroy方法中取消注冊。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM