36

URL をダウンロードする目的は何ですか? ブラウザでは、小さな通知アイコンが付いたものをダウンロードします。そのインテントを使用できるかどうか (およびそれが何であるか) を考えていました。

4

4 に答える 4

71

アプリケーションは、ブラウザや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でダウンロードマネージャーを使用する方法を示しています。

于 2012-01-27T12:25:15.660 に答える
21

ブラウザにダウンロード インテントがあるとは思えませんが、おそらく通常のACTION_VIEWインテントを使用して、コンテンツ タイプに基づいて URL をダウンロードするか表示するかをブラウザに決定させることができます。

だからあなたのコードトリガーから

new Intent(Intent.ACTION_VIEW, Uri.parse(url))

これにより、ブラウザでダウンロードが開始されることを願っています。

于 2010-05-30T09:09:34.023 に答える
1

あなたは何をしようとしているのですか?アプリでファイルをダウンロードする場合は、UrlConnection コードを使用できます。パッケージをダウンロードしたい場合は、ACTION_PACKAGE_INSTALL必要なことを行う必要があります。

于 2009-02-08T06:18:37.970 に答える
-1

Android のすべてのインテントについては、こちらをご覧ください。

于 2009-02-08T05:56:30.167 に答える