Most visited

Recently visited

Added in API level 9

DownloadManager.Request

public static class DownloadManager.Request
extends Object

java.lang.Object
   ↳ android.app.DownloadManager.Request


该类包含请求新下载所需的全部信息。 URI是唯一需要的参数。 请注意,默认下载目标是共享卷,如果系统需要回收系统使用空间,系统可能会删除您的文件。 如果这是一个问题,请在外部存储上使用位置(请参阅setDestinationUri(Uri)

Summary

Constants

int NETWORK_MOBILE

setAllowedNetworkTypes(int)位标志对应于 TYPE_MOBILE

int NETWORK_WIFI

setAllowedNetworkTypes(int)位标志对应于 TYPE_WIFI

int VISIBILITY_HIDDEN

该下载不会在用户界面或通知中显示。

int VISIBILITY_VISIBLE

该下载是可见的,但仅在通知正在进行时显示。

int VISIBILITY_VISIBLE_NOTIFY_COMPLETED

该下载是可见的,并在进行中和完成后显示在通知中。

int VISIBILITY_VISIBLE_NOTIFY_ONLY_COMPLETION

此下载仅在完成后显示在通知中。

Public constructors

DownloadManager.Request(Uri uri)

Public methods

DownloadManager.Request addRequestHeader(String header, String value)

添加一个HTTP头以包含在下载请求中。

void allowScanningByMediaScanner()

如果要下载的文件由MediaScanner扫描,则应在调用 enqueue(Request)之前调用此方法。

DownloadManager.Request setAllowedNetworkTypes(int flags)

限制可以继续下载的网络类型。

DownloadManager.Request setAllowedOverMetered(boolean allow)

设置此下载是否可以通过计量的网络连接进行。

DownloadManager.Request setAllowedOverRoaming(boolean allowed)

设置此下载是否可以通过漫游连接继续。

DownloadManager.Request setDescription(CharSequence description)

设置此下载的说明,以显示在通知中(如果启用)

DownloadManager.Request setDestinationInExternalFilesDir(Context context, String dirType, String subPath)

将下载文件的本地目标设置为应用程序外部文件目录中的路径(由 getExternalFilesDir(String)返回)。

DownloadManager.Request setDestinationInExternalPublicDir(String dirType, String subPath)

将下载文件的本地目标设置为公共外部存储目录中的路径(由 getExternalStoragePublicDirectory(String)返回)。

DownloadManager.Request setDestinationUri(Uri uri)

设置下载文件的本地目标。

DownloadManager.Request setMimeType(String mimeType)

设置此下载的MIME内容类型。

DownloadManager.Request setNotificationVisibility(int visibility)

控制下载管理器在下载运行或完成时是否发布系统通知。

DownloadManager.Request setRequiresCharging(boolean requiresCharging)

指定要运行此下载,需要插入设备。

DownloadManager.Request setRequiresDeviceIdle(boolean requiresDeviceIdle)

指定要运行,下载需要设备处于空闲模式。

DownloadManager.Request setShowRunningNotification(boolean show)

此方法在API级别11中已弃用。请使用setNotificationVisibility(int)

DownloadManager.Request setTitle(CharSequence title)

设置此下载的标题,以显示在通知中(如果启用)。

DownloadManager.Request setVisibleInDownloadsUi(boolean isVisible)

设置此下载是否应显示在系统的下载UI中。

Inherited methods

From class java.lang.Object

Constants

NETWORK_MOBILE

Added in API level 9
int NETWORK_MOBILE

setAllowedNetworkTypes(int)位标志对应于 TYPE_MOBILE

常数值:1(0x00000001)

NETWORK_WIFI

Added in API level 9
int NETWORK_WIFI

setAllowedNetworkTypes(int)位标志对应于 TYPE_WIFI

常量值:2(0x00000002)

VISIBILITY_HIDDEN

Added in API level 11
int VISIBILITY_HIDDEN

该下载不会在用户界面或通知中显示。

常量值:2(0x00000002)

VISIBILITY_VISIBLE

Added in API level 11
int VISIBILITY_VISIBLE

该下载是可见的,但仅在通知正在进行时显示。

常量值:0(0x00000000)

VISIBILITY_VISIBLE_NOTIFY_COMPLETED

Added in API level 11
int VISIBILITY_VISIBLE_NOTIFY_COMPLETED

该下载是可见的,并在进行中和完成后显示在通知中。

常数值:1(0x00000001)

VISIBILITY_VISIBLE_NOTIFY_ONLY_COMPLETION

Added in API level 12
int VISIBILITY_VISIBLE_NOTIFY_ONLY_COMPLETION

此下载仅在完成后显示在通知中。 这只适用于addCompletedDownload(String, String, boolean, String, String, long, boolean)

常量值:3(0x00000003)

Public constructors

DownloadManager.Request

Added in API level 9
DownloadManager.Request (Uri uri)

Parameters
uri Uri: the HTTP or HTTPS URI to download.

Public methods

addRequestHeader

Added in API level 9
DownloadManager.Request addRequestHeader (String header, 
                String value)

添加一个HTTP头以包含在下载请求中。 标题将被添加到列表的末尾。

Parameters
header String: HTTP header name
value String: header value
Returns
DownloadManager.Request this object

也可以看看:

allowScanningByMediaScanner

Added in API level 11
void allowScanningByMediaScanner ()

如果要下载的文件要由MediaScanner扫描,则应在调用 enqueue(Request)之前调用此方法。

setAllowedNetworkTypes

Added in API level 9
DownloadManager.Request setAllowedNetworkTypes (int flags)

限制可以继续下载的网络类型。 默认情况下,所有网络类型都是允许的。 考虑使用setAllowedOverMetered(boolean) ,因为它更灵活。

作为 N ,只将 NETWORK_WIFI这里标志等同于调用 setAllowedOverMetered(boolean)false

Parameters
flags int: any combination of the NETWORK_* bit flags.
Returns
DownloadManager.Request this object

setAllowedOverMetered

Added in API level 16
DownloadManager.Request setAllowedOverMetered (boolean allow)

设置此下载是否可以通过计量的网络连接进行。 默认情况下,允许测量网络。

Parameters
allow boolean
Returns
DownloadManager.Request

也可以看看:

setAllowedOverRoaming

Added in API level 9
DownloadManager.Request setAllowedOverRoaming (boolean allowed)

设置此下载是否可以通过漫游连接继续。 默认情况下,允许漫游。

Parameters
allowed boolean: whether to allow a roaming connection to be used
Returns
DownloadManager.Request this object

setDescription

Added in API level 9
DownloadManager.Request setDescription (CharSequence description)

设置此下载的说明,以显示在通知中(如果启用)

Parameters
description CharSequence
Returns
DownloadManager.Request this object

setDestinationInExternalFilesDir

Added in API level 9
DownloadManager.Request setDestinationInExternalFilesDir (Context context, 
                String dirType, 
                String subPath)

将下载文件的本地目标设置为应用程序外部文件目录中的路径(由 getExternalFilesDir(String)返回。

MediaScanner不扫描下载的文件。 但可以通过调用allowScanningByMediaScanner()进行扫描。

Parameters
context Context: the Context to use in determining the external files directory
dirType String: the directory type to pass to getExternalFilesDir(String)
subPath String: the path within the external directory, including the destination filename
Returns
DownloadManager.Request this object
Throws
IllegalStateException If the external storage directory cannot be found or created.

setDestinationInExternalPublicDir

Added in API level 9
DownloadManager.Request setDestinationInExternalPublicDir (String dirType, 
                String subPath)

将下载文件的本地目标设置为公用外部存储目录中的路径(由 getExternalStoragePublicDirectory(String)返回)。

MediaScanner不扫描下载的文件。 但可以通过拨打allowScanningByMediaScanner()进行扫描。

Parameters
dirType String: the directory type to pass to getExternalStoragePublicDirectory(String)
subPath String: the path within the external directory, including the destination filename
Returns
DownloadManager.Request this object
Throws
IllegalStateException If the external storage directory cannot be found or created.

setDestinationUri

Added in API level 9
DownloadManager.Request setDestinationUri (Uri uri)

设置下载文件的本地目标。 必须是外部存储器上路径的文件URI,并且调用应用程序必须具有WRITE_EXTERNAL_STORAGE权限。

MediaScanner不扫描下载的文件。 但可以通过拨打allowScanningByMediaScanner()进行扫描。

默认情况下,下载将保存到共享下载缓存中生成的文件名中,并可由系统在任何时候删除以回收空间。

Parameters
uri Uri
Returns
DownloadManager.Request this object

setMimeType

Added in API level 9
DownloadManager.Request setMimeType (String mimeType)

设置此下载的MIME内容类型。 这将覆盖服务器响应中声明的内容类型。

Parameters
mimeType String
Returns
DownloadManager.Request this object

也可以看看:

setNotificationVisibility

Added in API level 11
DownloadManager.Request setNotificationVisibility (int visibility)

控制下载管理器在下载运行或完成时是否发布系统通知。 如果启用,则下载管理器发布有关通过系统NotificationManager下载的通知。 默认情况下,只有在下载过程中才会显示通知。

它可以采取以下值: VISIBILITY_HIDDENVISIBILITY_VISIBLEVISIBILITY_VISIBLE_NOTIFY_COMPLETED

如果设置为 VISIBILITY_HIDDEN ,则需要权限android.permission.DOWNLOAD_WITHOUT_NOTIFICATION。

Parameters
visibility int: the visibility setting value
Returns
DownloadManager.Request this object

setRequiresCharging

Added in API level 24
DownloadManager.Request setRequiresCharging (boolean requiresCharging)

指定要运行此下载,需要插入设备。默认设置为false。

Parameters
requiresCharging boolean: Whether or not the device is plugged in.
Returns
DownloadManager.Request

也可以看看:

setRequiresDeviceIdle

Added in API level 24
DownloadManager.Request setRequiresDeviceIdle (boolean requiresDeviceIdle)

指定要运行,下载需要设备处于空闲模式。 这默认为false。

空闲模式是由系统提供的松散定义,这意味着设备未被使用,并且一段时间未被使用。

Parameters
requiresDeviceIdle boolean: Whether or not the device need be within an idle maintenance window.
Returns
DownloadManager.Request

也可以看看:

setShowRunningNotification

Added in API level 9
DownloadManager.Request setShowRunningNotification (boolean show)

此方法在API级别11中已弃用。
使用setNotificationVisibility(int)

控制在此下载运行时是否由下载管理器发布系统通知。 如果启用,下载管理器通过系统发布有关下载的通知NotificationManager 默认情况下,显示通知。 如果设置为false,则需要权限android.permission.DOWNLOAD_WITHOUT_NOTIFICATION。

Parameters
show boolean: whether the download manager should show a notification for this download.
Returns
DownloadManager.Request this object

setTitle

Added in API level 9
DownloadManager.Request setTitle (CharSequence title)

设置此下载的标题,以显示在通知中(如果启用)。 如果没有标题,一旦下载开始,将根据下载文件名分配一个默认标题。

Parameters
title CharSequence
Returns
DownloadManager.Request this object

setVisibleInDownloadsUi

Added in API level 9
DownloadManager.Request setVisibleInDownloadsUi (boolean isVisible)

设置此下载是否应显示在系统的下载UI中。 默认情况下为真。

Parameters
isVisible boolean: whether to display this download in the Downloads UI
Returns
DownloadManager.Request this object

Hooray!