Я использую DownloadManager, чтобы поставить в очередь некоторые загружаемые мной файлы, но сталкиваюсь с этой проблемой, когда я специально пытаюсь использовать соединение Mobile / 4G. Я использую телефон Android 2.3.4. Мой код использует API 2.3.3.
Я делаю следующую команду (я хочу, чтобы соединение использовало 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
Есть идеи, что это может быть? Я все еще не получил разрешение? Есть ли другой параметр, которым мне нужно управлять, чтобы указать только использование сетевого подключения?
EDIT:
Я пробовал это на совершенно новом планшете Galaxy, и это поведение, которое я замечаю при использовании этого устройства: когда Wi-Fi включен и подключен, он не загружается при указании использования NETWORK_MOBILE. Если Wi-Fi выключен или не подключен, у него нет проблем с использованием соединения 4G. Я думаю, что это функция безопасности, выполняемая устройством, это может быть переопределено?