Error : One of RECEIVER_EXPORTED or RECEIVER_NOT_EXPORTED should be specified when a receiver isn't being registered exclusively for system broadcasts
To fix the error: One of RECEIVER_EXPORTED or RECEIVER_NOT_EXPORTED should be specified when a receiver isn't being registered exclusively for system broadcasts As discussed at Google I/O 2023, registering receivers with intention using the RECEIVER_EXPORTED / RECEIVER_NOT_EXPORTED flag was introduced as: Solution Outline: if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) { registerReceiver (broadcastReceiver, intentFilter, RECEIVER_EXPORTED) }else { registerReceiver (broadcastReceiver, intentFilter) } Exact Code: if ( Build . VERSION . SDK_INT >= Build . VERSION_CODES . TIRAMISU ) { registerReceiver( onDownloadComplete , new IntentFilter( DownloadManager . ACTION_DOWNLOAD_COMPLETE ), RECEIVER_EXPORTED ); } else { registerReceiver( onDownloadComplete , new IntentFilter( DownloadManager . ACTION_DOWNLOAD_COMPLETE )); } Ref: StackOverflow