public
static
class
DownloadManager.Request
extends Object
java.lang.Object | |
↳ | android.app.DownloadManager.Request |
This class contains all the information necessary to request a new download. The URI is the
only required parameter.
Note that the default download destination is a shared volume where the system might delete
your file if it needs to reclaim space for system use. If this is a problem, use a location
on external storage (see setDestinationUri(Uri)
.
Constants | |
---|---|
int |
NETWORK_MOBILE
Bit flag for |
int |
NETWORK_WIFI
Bit flag for |
int |
VISIBILITY_HIDDEN
This download doesn't show in the UI or in the notifications. |
int |
VISIBILITY_VISIBLE
This download is visible but only shows in the notifications while it's in progress. |
int |
VISIBILITY_VISIBLE_NOTIFY_COMPLETED
This download is visible and shows in the notifications while in progress and after completion. |
int |
VISIBILITY_VISIBLE_NOTIFY_ONLY_COMPLETION
This download shows in the notifications after completion ONLY. |
Public constructors | |
---|---|
DownloadManager.Request(Uri uri)
|
Public methods | |
---|---|
DownloadManager.Request
|
addRequestHeader(String header, String value)
Add an HTTP header to be included with the download request. |
void
|
allowScanningByMediaScanner()
If the file to be downloaded is to be scanned by MediaScanner, this method
should be called before |
DownloadManager.Request
|
setAllowedNetworkTypes(int flags)
Restrict the types of networks over which this download may proceed. |
DownloadManager.Request
|
setAllowedOverMetered(boolean allow)
Set whether this download may proceed over a metered network connection. |
DownloadManager.Request
|
setAllowedOverRoaming(boolean allowed)
Set whether this download may proceed over a roaming connection. |
DownloadManager.Request
|
setDescription(CharSequence description)
Set a description of this download, to be displayed in notifications (if enabled) |
DownloadManager.Request
|
setDestinationInExternalFilesDir(Context context, String dirType, String subPath)
Set the local destination for the downloaded file to a path within
the application's external files directory (as returned by
|
DownloadManager.Request
|
setDestinationInExternalPublicDir(String dirType, String subPath)
Set the local destination for the downloaded file to a path within
the public external storage directory (as returned by
|
DownloadManager.Request
|
setDestinationUri(Uri uri)
Set the local destination for the downloaded file. |
DownloadManager.Request
|
setMimeType(String mimeType)
Set the MIME content type of this download. |
DownloadManager.Request
|
setNotificationVisibility(int visibility)
Control whether a system notification is posted by the download manager while this download is running or when it is completed. |
DownloadManager.Request
|
setRequiresCharging(boolean requiresCharging)
Specify that to run this download, the device needs to be plugged in. |
DownloadManager.Request
|
setRequiresDeviceIdle(boolean requiresDeviceIdle)
Specify that to run, the download needs the device to be in idle mode. |
DownloadManager.Request
|
setShowRunningNotification(boolean show)
This method was deprecated
in API level 11.
use |
DownloadManager.Request
|
setTitle(CharSequence title)
Set the title of this download, to be displayed in notifications (if enabled). |
DownloadManager.Request
|
setVisibleInDownloadsUi(boolean isVisible)
Set whether this download should be displayed in the system's Downloads UI. |
Inherited methods | |
---|---|
From
class
java.lang.Object
|
int NETWORK_MOBILE
Bit flag for setAllowedNetworkTypes(int)
corresponding to
TYPE_MOBILE
.
Constant Value: 1 (0x00000001)
int NETWORK_WIFI
Bit flag for setAllowedNetworkTypes(int)
corresponding to
TYPE_WIFI
.
Constant Value: 2 (0x00000002)
int VISIBILITY_HIDDEN
This download doesn't show in the UI or in the notifications.
Constant Value: 2 (0x00000002)
int VISIBILITY_VISIBLE
This download is visible but only shows in the notifications while it's in progress.
Constant Value: 0 (0x00000000)
int VISIBILITY_VISIBLE_NOTIFY_COMPLETED
This download is visible and shows in the notifications while in progress and after completion.
Constant Value: 1 (0x00000001)
int VISIBILITY_VISIBLE_NOTIFY_ONLY_COMPLETION
This download shows in the notifications after completion ONLY.
It is usuable only with
addCompletedDownload(String, String, boolean, String, String, long, boolean)
.
Constant Value: 3 (0x00000003)
DownloadManager.Request (Uri uri)
Parameters | |
---|---|
uri |
Uri :
the HTTP or HTTPS URI to download.
|
DownloadManager.Request addRequestHeader (String header, String value)
Add an HTTP header to be included with the download request. The header will be added to the end of the list.
Parameters | |
---|---|
header |
String :
HTTP header name |
value |
String :
header value |
Returns | |
---|---|
DownloadManager.Request |
this object |
See also:
void allowScanningByMediaScanner ()
If the file to be downloaded is to be scanned by MediaScanner, this method
should be called before enqueue(Request)
is called.
DownloadManager.Request setAllowedNetworkTypes (int flags)
Restrict the types of networks over which this download may proceed.
By default, all network types are allowed. Consider using
setAllowedOverMetered(boolean)
instead, since it's more
flexible.
As of N
, setting only the
NETWORK_WIFI
flag here is equivalent to calling
setAllowedOverMetered(boolean)
with false
.
Parameters | |
---|---|
flags |
int :
any combination of the NETWORK_* bit flags. |
Returns | |
---|---|
DownloadManager.Request |
this object |
DownloadManager.Request setAllowedOverMetered (boolean allow)
Set whether this download may proceed over a metered network connection. By default, metered networks are allowed.
Parameters | |
---|---|
allow |
boolean
|
Returns | |
---|---|
DownloadManager.Request |
See also:
DownloadManager.Request setAllowedOverRoaming (boolean allowed)
Set whether this download may proceed over a roaming connection. By default, roaming is allowed.
Parameters | |
---|---|
allowed |
boolean :
whether to allow a roaming connection to be used |
Returns | |
---|---|
DownloadManager.Request |
this object |
DownloadManager.Request setDescription (CharSequence description)
Set a description of this download, to be displayed in notifications (if enabled)
Parameters | |
---|---|
description |
CharSequence
|
Returns | |
---|---|
DownloadManager.Request |
this object |
DownloadManager.Request setDestinationInExternalFilesDir (Context context, String dirType, String subPath)
Set the local destination for the downloaded file to a path within
the application's external files directory (as returned by
getExternalFilesDir(String)
.
The downloaded file is not scanned by MediaScanner. But it can be
made scannable by calling 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. |
DownloadManager.Request setDestinationInExternalPublicDir (String dirType, String subPath)
Set the local destination for the downloaded file to a path within
the public external storage directory (as returned by
getExternalStoragePublicDirectory(String)
).
The downloaded file is not scanned by MediaScanner. But it can be
made scannable by calling 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. |
DownloadManager.Request setDestinationUri (Uri uri)
Set the local destination for the downloaded file. Must be a file URI to a path on external storage, and the calling application must have the WRITE_EXTERNAL_STORAGE permission.
The downloaded file is not scanned by MediaScanner.
But it can be made scannable by calling allowScanningByMediaScanner()
.
By default, downloads are saved to a generated filename in the shared download cache and may be deleted by the system at any time to reclaim space.
Parameters | |
---|---|
uri |
Uri
|
Returns | |
---|---|
DownloadManager.Request |
this object |
DownloadManager.Request setMimeType (String mimeType)
Set the MIME content type of this download. This will override the content type declared in the server's response.
Parameters | |
---|---|
mimeType |
String
|
Returns | |
---|---|
DownloadManager.Request |
this object |
See also:
DownloadManager.Request setNotificationVisibility (int visibility)
Control whether a system notification is posted by the download manager while this
download is running or when it is completed.
If enabled, the download manager posts notifications about downloads
through the system NotificationManager
.
By default, a notification is shown only when the download is in progress.
It can take the following values: VISIBILITY_HIDDEN
,
VISIBILITY_VISIBLE
,
VISIBILITY_VISIBLE_NOTIFY_COMPLETED
.
If set to VISIBILITY_HIDDEN
, this requires the permission
android.permission.DOWNLOAD_WITHOUT_NOTIFICATION.
Parameters | |
---|---|
visibility |
int :
the visibility setting value |
Returns | |
---|---|
DownloadManager.Request |
this object |
DownloadManager.Request setRequiresCharging (boolean requiresCharging)
Specify that to run this download, the device needs to be plugged in. This defaults to false.
Parameters | |
---|---|
requiresCharging |
boolean :
Whether or not the device is plugged in. |
Returns | |
---|---|
DownloadManager.Request |
See also:
DownloadManager.Request setRequiresDeviceIdle (boolean requiresDeviceIdle)
Specify that to run, the download needs the device to be in idle mode. This defaults to false.
Idle mode is a loose definition provided by the system, which means that the device is not in use, and has not been in use for some time.
Parameters | |
---|---|
requiresDeviceIdle |
boolean :
Whether or not the device need be within an
idle maintenance window. |
Returns | |
---|---|
DownloadManager.Request |
See also:
DownloadManager.Request setShowRunningNotification (boolean show)
This method was deprecated
in API level 11.
use setNotificationVisibility(int)
Control whether a system notification is posted by the download manager while this
download is running. If enabled, the download manager posts notifications about downloads
through the system NotificationManager
. By default, a notification is
shown.
If set to false, this requires the permission
android.permission.DOWNLOAD_WITHOUT_NOTIFICATION.
Parameters | |
---|---|
show |
boolean :
whether the download manager should show a notification for this download. |
Returns | |
---|---|
DownloadManager.Request |
this object |
DownloadManager.Request setTitle (CharSequence title)
Set the title of this download, to be displayed in notifications (if enabled). If no title is given, a default one will be assigned based on the download filename, once the download starts.
Parameters | |
---|---|
title |
CharSequence
|
Returns | |
---|---|
DownloadManager.Request |
this object |
DownloadManager.Request setVisibleInDownloadsUi (boolean isVisible)
Set whether this download should be displayed in the system's Downloads UI. True by default.
Parameters | |
---|---|
isVisible |
boolean :
whether to display this download in the Downloads UI |
Returns | |
---|---|
DownloadManager.Request |
this object |