DownloadManager를 사용하여 Mobile/4G 연결을 사용하려고 할 때이 문제가 발생하지만 다운로드가 지연됩니다. Android 2.3.4 휴대 전화를 사용하고 있습니다. 내 코드는 2.3.3 API를 사용하고 있습니다. 나는 다음과 같은 명령을하고 있어요Android DownloadManager 'Download Requires Network'오류가 발생했습니다.
는 목록
는하지만 다운로드하려고 시도 할 때마다request.setAllowedNetworkTypes(Request.NETWORK_MOBILE);
, 그것은이 DownloadManager에서 다운로드를 배치합니다 (I는 4G/3G를 사용하도록 연결을 강제 할)하지만 영원히 남아 "진행 중"상태이고 상단의 오류는 파일 이름과 "다운로드 필요 네트워크"오류를 나열합니다.
중단 요청을 다운로드 (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 연결을 사용하여 문제가 없습니다. 나는 이것이 장치에 의해 수행되는 보안 기능이라고 생각하고 있는데,이 기능은 무시 될 수 있습니까?
메인 스레드에서 DownloadManager를 사용하고 있습니까? –
다음과 같은 활동이 있습니다. 의도 i = new Intent(); i.setAction (DownloadManager.ACTION_VIEW_DOWNLOADS); startActivity (i); 또한 다음을 시도해 보았습니다. ConnectivityManager cm = (ConnectivityManager) getBaseContext(). getSystemService (Context.CONNECTIVITY_SERVICE); cm.startUsingNetworkFeature (ConnectivityManager.TYPE_MOBILE, "enableHIPRI"); – azdragon2
당신은 2.3 API를 사용하고 있다는 것을 의미합니까? 왜냐하면 DownloadManager는 Api 레벨 9 (2.3 진저 브레드)까지 사용할 수 없었기 때문입니까? –