AndroidManifest.xml 4.5 KB
Newer Older
1 2 3 4
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
        package="com.android.providers.downloads"
        android:sharedUserId="android.media">
Tom Taylor's avatar
Tom Taylor committed
5

6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
    <!-- Allows access to the Download Manager -->
    <permission android:name="android.permission.ACCESS_DOWNLOAD_MANAGER"
        android:label="@string/permlab_downloadManager"
        android:description="@string/permdesc_downloadManager"
        android:protectionLevel="signatureOrSystem" />

    <!-- Allows advanced access to the Download Manager -->
    <permission android:name="android.permission.ACCESS_DOWNLOAD_MANAGER_ADVANCED"
        android:label="@string/permlab_downloadManagerAdvanced"
        android:description="@string/permdesc_downloadManagerAdvanced"
        android:protectionLevel="signatureOrSystem" />

    <!-- Allows to send download completed intents -->
    <permission android:name="android.permission.SEND_DOWNLOAD_COMPLETED_INTENTS"
        android:label="@string/permlab_downloadCompletedIntent"
        android:description="@string/permdesc_downloadCompletedIntent"
        android:protectionLevel="signature" />

24 25 26 27
    <!-- Allows to download non-purgeable files to the cache partition through the public API -->
    <permission android:name="android.permission.DOWNLOAD_CACHE_NON_PURGEABLE"
        android:label="@string/permlab_downloadCacheNonPurgeable"
        android:description="@string/permdesc_downloadCacheNonPurgeable"
28 29 30 31 32 33 34
        android:protectionLevel="signatureOrSystem"/>

    <!-- Allows to queue downloads without a notification shown while the download runs. -->
    <permission android:name="android.permission.DOWNLOAD_WITHOUT_NOTIFICATION"
        android:label="@string/permlab_downloadWithoutNotification"
        android:description="@string/permdesc_downloadWithoutNotification"
        android:protectionLevel="signatureOrSystem"/>
35

36 37 38 39 40 41 42 43
    <!-- Allows an app to access all downloads in the system via the /all_downloads/ URIs.  The
         protection level could be relaxed in the future to support third-party download
         managers. -->
    <permission android:name="android.permission.ACCESS_ALL_DOWNLOADS"
        android:label="@string/permlab_accessAllDownloads"
        android:description="@string/permdesc_accessAllDownloads"
        android:protectionLevel="signature"/>

44 45 46 47 48 49 50
    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
    <uses-permission android:name="android.permission.ACCESS_DOWNLOAD_MANAGER" />
    <uses-permission android:name="android.permission.ACCESS_DRM" />
    <uses-permission android:name="android.permission.ACCESS_CACHE_FILESYSTEM" />
    <uses-permission android:name="android.permission.SEND_DOWNLOAD_COMPLETED_INTENTS" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-permission android:name="android.permission.INTERNET" />
51
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
Tom Taylor's avatar
Tom Taylor committed
52
    <uses-permission android:name="android.permission.INSTALL_DRM" />
53
    <uses-permission android:name="android.permission.ACCESS_ALL_DOWNLOADS" />
54 55

    <application android:process="android.process.media"
56
                 android:label="@string/app_label">
57
        <provider android:name=".DownloadProvider"
58 59 60 61 62 63
                  android:authorities="downloads"
                  android:permission="android.permission.ACCESS_ALL_DOWNLOADS">
          <!-- Anyone can access /my_downloads, the provider internally restricts access by UID for
               these URIs -->
          <path-permission android:pathPrefix="/my_downloads"
                           android:permission="android.permission.INTERNET"/>
64 65 66
          <!-- Temporary, for backwards compatibility -->
          <path-permission android:pathPrefix="/download"
                           android:permission="android.permission.INTERNET"/>
67 68 69 70
          <!-- Apps with access to /all_downloads/... can grant permissions, allowing them to share
               downloaded files with other viewers -->
          <grant-uri-permission android:pathPrefix="/all_downloads/"/>
        </provider>
71 72 73 74 75 76 77 78 79
        <service android:name=".DownloadService"
                android:permission="android.permission.ACCESS_DOWNLOAD_MANAGER" />
        <receiver android:name=".DownloadReceiver" android:exported="false">
            <intent-filter>
                <action android:name="android.intent.action.BOOT_COMPLETED" />
                <action android:name="android.net.conn.CONNECTIVITY_CHANGE" />
            </intent-filter>
        </receiver>
    </application>
Tom Taylor's avatar
Tom Taylor committed
80
</manifest>