ファイルのリストをダウンロードするために Android Download Manager を使用しています。最近、クラッシュレポートに出くわしました
Unknown java.lang.IllegalArgumentException: Unknown URL content://downloads/my_downloads
その後、ユーザーが Android Download Manager を無効にしたことが原因であることがわかりました。以下のコードでパッケージ名を確認して、ダウンロードマネージャーが無効になっているかどうかを確認します。
int state = this.getPackageManager().getApplicationEnabledSetting("com.android.providers.downloads");
そして今、無効になっているダウンロード マネージャーを有効にする方法を見つける必要があります。マニフェストのアクセス許可で有効状態に設定しようとしましたが、セキュリティ例外が発生し続けます。
this.getPackageManager().setApplicationEnabledSetting("com.android.providers.downloads", PackageManager.COMPONENT_ENABLED_STATE_DEFAULT, 0);
<uses-permission android:name="android.permission.CHANGE_COMPONENT_ENABLED_STATE"/>
システムアプリなので届かないのではないかと思っていました。(Google Playアプリがそれを行います)。
ユーザーを Download Manager Application Info ビューにリダイレクトする方法はありますか? ユーザーが有効にするには?実行時にプログラムで有効にする方法がない場合。