DownloadManager を使用して、アプリケーションで多数のファイルをダウンロードしています。downloadManager によってキューに入れられたダウンロードをキャンセルする方法がわかりません。
次の 2 つの可能性があります。ユーザーは、通知バーでクリックして手動でキャンセルできます。b. コードを使用してダウンロードをキャンセルして削除します。
次のレシーバーを定義しています。
<receiver
android:name=".DownloadStatusReceiver"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.DOWNLOAD_COMPLETE" />
<action android:name="android.intent.action.DOWNLOAD_NOTIFICATION_CLICKED" />
</intent-filter>
</receiver>
そして受信機で
if (DownloadManager.ACTION_NOTIFICATION_CLICKED.equals(action)) {
Constants.showLog(TAG, "Notification clicked");
long downloadId = intent.getLongExtra(DownloadManager.EXTRA_DOWNLOAD_ID, 0);
DownloadManager dm =(DownloadManager)context.getSystemService(Context.DOWNLOAD_SERVICE);
dm.remove(downloadId);
}
洞察はありますか?