注销下载接收器是个好主意吗?

Is it a good idea to unregister download receiver?

我正在使用下载管理器下载文件,只是想知道 onPause/onResume 上的 registering/unregistering 接收器的意义是什么?不管怎样,填充仍然在后台继续下载。

   protected void onResume() {
    super.onResume();
    // Register the receiver to receive an intent when download complete
    IntentFilter intentFilter = new IntentFilter(DownloadManager.ACTION_DOWNLOAD_COMPLETE);
    registerReceiver(downloadReceiver, intentFilter);
}

@Override
protected void onPause() {
    // TODO Auto-generated method stub
    super.onPause();
    // Unregister the receiver
    unregisterReceiver(downloadReceiver);
}

对于这种广播接收器,你可能不想要。如果您不在屏幕上,则在 onPause 中取消注册是为了您不关心的广播。例如,如果您是一个正在注册屏幕关闭通知以暂停计时器的游戏,那么如果您不在前台,则不需要接收这些通知。下载文件 - 如果您需要知道该文件何时下载(比如处理它),那么您就不想注销。当然,在那种情况下,您可能不希望您的 activity 拥有 BroadcastReceiver,但您的应用程序的其他部分将保留更长时间。