DownloadManager を使用して、作成中のダウンロードをキューに入れていますが、具体的にモバイル/4G 接続を使用しようとすると、この問題が発生します。Android 2.3.4 の携帯電話を使用しています。私のコードは 2.3.3 API を使用しています。
次のコマンドを実行しています (強制的に接続に 4G/3G を使用させたい)
request.setAllowedNetworkTypes(Request.NETWORK_MOBILE);
ただし、ダウンロードを試みるたびに、ダウンロードは DownloadManager のリストに配置されますが、ステータスは「進行中」のままで、一番上にファイル名と「ダウンロードにはネットワークが必要です」というエラーが表示されます。
さらに調査し、デバイスを接続して logcat でログを確認すると、ダウンロードしようとすると次のエラーが表示されます。
ダウンロード 92 の要求を中止しています: 現在のネットワーク タイプを使用しないようにダウンロードが要求されました
次の権限があります。
android.permission.WRITE_OWNER_DATA
android.permission.READ_OWNER_DATA
android.permission.WRITE_EXTERNAL_STORAGE
android.permission.INTERNET
android.permission.ACCESS_NETWORK_STATE
android.permission.ACCESS_WIFI_STATE
android.permission.CHANGE_WIFI_MULTICAST_STATE
android.permission.CHANGE_NETWORK_STATE
android.permission.CHANGE_WIFI_STATE
それが何であるかについてのアイデアはありますか?まだ許可がありませんか? ネットワーク接続のみの使用を指定するために制御する必要がある別の設定はありますか?
編集:私はこれを真新しいGalaxyタブレットで試しましたが、これはこのデバイスを使用して気づいた動作です.wifiがオンで接続されている場合、NETWORK_MOBILEを使用するように指定するとダウンロードに失敗します. Wi-Fiがオフまたは接続されていない場合、4G接続を使用しても問題ありません. これはデバイスによって行われているセキュリティ機能だと思いますが、上書きできますか?