문제

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 원하는대로해야합니다.

보세요 여기 모든 안드로이드 의도.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top