안드로이드 다운로드 의도
-
22-08-2019 - |
문제
URL을 다운로드하려는 의도가 무엇인지 궁금했습니다. 브라우저에서는 작은 알림 아이콘이있는 물건을 다운로드합니다. 나는 그 의도를 사용할 수 있는지 궁금했다 (그리고 그것이 무엇인지).
해결책
응용 프로그램은 브라우저 및 Gmail과 같은 다운로드 관리자로 파일을 다운로드 할 수 있습니다. 이것은 진저 브레드로 시작합니다.
앱이 필요합니다 인터넷 다운로드를 시작할 수있는 권한. 기본 다운로드 디렉토리에 파일을 저장하려면 write_external_storage 허가.
URI를 다운로드하는 방법은 다음과 같습니다.
DownloadManager.Request r = new DownloadManager.Request(uri);
// This put the download in the same Download dir the browser uses
r.setDestinationInExternalPublicDir(Environment.DIRECTORY_DOWNLOADS, "fileName");
// When downloading music and videos they will be listed in the player
// (Seems to be available since Honeycomb only)
r.allowScanningByMediaScanner();
// Notify user when download is completed
// (Seems to be available since Honeycomb only)
r.setNotificationVisibility(DownloadManager.Request.VISIBILITY_VISIBLE_NOTIFY_COMPLETED);
// Start download
DownloadManager dm = (DownloadManager) getSystemService(DOWNLOAD_SERVICE);
dm.enqueue(r);
알림을 사용자 정의하고 다운로드 상태를 쿼리하고 다운로드 위치를 설정하기위한 기타 여러 옵션이 있습니다.
이 블로그 게시물 숨겨진 API를 통해 이전 버전의 Android에서 다운로드 관리자를 사용하는 방법을 보여줍니다.
다른 팁
브라우저에 다운로드 의도가 있다고 생각하지는 않지만 아마도 정상을 사용할 수 있습니다. ACTION_VIEW
의도 및 브라우저가 컨텐츠 유형을 기반으로 URL을 다운로드하거나보아야하는지 결정하도록합니다.
코드 트리거에서
new Intent(Intent.ACTION_VIEW, Uri.parse(url))
그리고 이것이 브라우저에서 다운로드를 유발하기를 바랍니다.
당신은 무엇을하려고합니까? 앱이 파일을 다운로드하려면 URLConnection 코드를 사용할 수 있습니다. 패키지를 다운로드하려면 ACTION_PACKAGE_INSTALL
원하는대로해야합니다.
보세요 여기 모든 안드로이드 의도.
제휴하지 않습니다 StackOverflow