1<?xml version="1.0" encoding="utf-8"?> 2<!-- 3/* 4 * Copyright (C) 2007-2017 The Android Open Source Project 5 * 6 * Licensed under the Apache License, Version 2.0 (the "License"); 7 * you may not use this file except in compliance with the License. 8 * You may obtain a copy of the License at 9 * 10 * http://www.apache.org/licenses/LICENSE-2.0 11 * 12 * Unless required by applicable law or agreed to in writing, software 13 * distributed under the License is distributed on an "AS IS" BASIS, 14 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 * See the License for the specific language governing permissions and 16 * limitations under the License. 17 */ 18--> 19<manifest xmlns:android="http://schemas.android.com/apk/res/android" 20 package="com.android.documentsui"> 21 22 <uses-sdk android:minSdkVersion="29" /> 23 24 <uses-permission android:name="android.permission.MANAGE_DOCUMENTS" /> 25 <uses-permission android:name="android.permission.REMOVE_TASKS" /> 26 <uses-permission android:name="android.permission.FOREGROUND_SERVICE"/> 27 <uses-permission android:name="android.permission.WAKE_LOCK" /> 28 <uses-permission android:name="android.permission.CACHE_CONTENT" /> 29 <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" /> 30 <uses-permission android:name="android.permission.CHANGE_OVERLAY_PACKAGES" /> 31 <uses-permission android:name="android.permission.INTERACT_ACROSS_USERS" /> 32 <uses-permission android:name="android.permission.MODIFY_QUIET_MODE" /> 33 <uses-permission android:name="android.permission.QUERY_ALL_PACKAGES" /> 34 35 <!-- Permissions required for reading and logging compat changes --> 36 <uses-permission android:name="android.permission.LOG_COMPAT_CHANGE"/> 37 <uses-permission android:name="android.permission.READ_COMPAT_CHANGE_CONFIG"/> 38 39 <application 40 android:name=".DocumentsApplication" 41 android:label="@string/app_label" 42 android:icon="@drawable/app_icon" 43 android:supportsRtl="true" 44 android:allowBackup="true" 45 android:backupAgent=".prefs.BackupAgent" 46 android:fullBackupOnly="false" 47 android:crossProfile="true"> 48 49 <meta-data 50 android:name="com.google.android.backup.api_key" 51 android:value="AEdPqrEAAAAInBA8ued0O_ZyYUsVhwinUF-x50NIe9K0GzBW4A" /> 52 53 <activity 54 android:name=".picker.PickActivity" 55 android:exported="true" 56 android:theme="@style/LauncherTheme" 57 android:visibleToInstantApps="true"> 58 <intent-filter android:priority="100"> 59 <action android:name="android.intent.action.OPEN_DOCUMENT" /> 60 <category android:name="android.intent.category.DEFAULT" /> 61 <category android:name="android.intent.category.OPENABLE" /> 62 <data android:mimeType="*/*" /> 63 </intent-filter> 64 <intent-filter android:priority="100"> 65 <action android:name="android.intent.action.CREATE_DOCUMENT" /> 66 <category android:name="android.intent.category.DEFAULT" /> 67 <category android:name="android.intent.category.OPENABLE" /> 68 <data android:mimeType="*/*" /> 69 </intent-filter> 70 <intent-filter android:priority="100"> 71 <action android:name="android.intent.action.GET_CONTENT" /> 72 <category android:name="android.intent.category.DEFAULT" /> 73 <category android:name="android.intent.category.OPENABLE" /> 74 <data android:mimeType="*/*" /> 75 </intent-filter> 76 <intent-filter android:priority="100"> 77 <action android:name="android.intent.action.OPEN_DOCUMENT_TREE" /> 78 <category android:name="android.intent.category.DEFAULT" /> 79 </intent-filter> 80 </activity> 81 82 <activity 83 android:name=".files.LauncherActivity" 84 android:label="@string/launcher_label" 85 android:icon="@drawable/launcher_icon" 86 android:theme="@android:style/Theme.NoDisplay"> 87 </activity> 88 89 <activity 90 android:name=".inspector.InspectorActivity" 91 android:label="@string/menu_inspect" 92 android:icon="@drawable/launcher_icon" 93 android:theme="@style/DocumentsTheme"> 94 </activity> 95 96 <!-- Preserve original launcher activity from Nougat. --> 97 <activity-alias 98 android:name=".LauncherActivity" 99 android:targetActivity=".files.LauncherActivity" 100 android:label="@string/launcher_label" 101 android:exported="true" 102 android:icon="@drawable/launcher_icon" > 103 <intent-filter> 104 <action android:name="android.intent.action.MAIN" /> 105 <category android:name="android.intent.category.LAUNCHER" /> 106 <category android:name="android.intent.category.APP_FILES" /> 107 </intent-filter> 108 <meta-data android:name="android.app.shortcuts" android:resource="@xml/shortcuts" /> 109 </activity-alias> 110 111 <activity 112 android:name=".files.FilesActivity" 113 android:documentLaunchMode="intoExisting" 114 android:exported="true" 115 android:theme="@style/LauncherTheme"> 116 <intent-filter> 117 <action android:name="android.intent.action.MAIN" /> 118 </intent-filter> 119 <intent-filter> 120 <action android:name="android.intent.action.VIEW" /> 121 <category android:name="android.intent.category.DEFAULT" /> 122 <data android:mimeType="vnd.android.document/root" /> 123 </intent-filter> 124 <intent-filter> 125 <action android:name="android.intent.action.VIEW" /> 126 <category android:name="android.intent.category.DEFAULT" /> 127 <data android:mimeType="vnd.android.document/directory" /> 128 </intent-filter> 129 </activity> 130 131 <activity-alias android:name=".ViewDownloadsActivity" 132 android:targetActivity=".files.FilesActivity" 133 android:exported="true" 134 android:enabled="@bool/handle_view_downloads_intent"> 135 <intent-filter> 136 <action android:name="android.intent.action.VIEW_DOWNLOADS" /> 137 <category android:name="android.intent.category.DEFAULT" /> 138 </intent-filter> 139 </activity-alias> 140 141 <activity 142 android:name=".ScopedAccessActivity" 143 android:exported="true" 144 android:theme="@android:style/Theme.Translucent.NoTitleBar"> 145 <intent-filter> 146 <action android:name="android.os.storage.action.OPEN_EXTERNAL_DIRECTORY" /> 147 <category android:name="android.intent.category.DEFAULT" /> 148 </intent-filter> 149 </activity> 150 151 <provider 152 android:name=".picker.LastAccessedProvider" 153 android:authorities="com.android.documentsui.lastAccessed" 154 android:exported="false"/> 155 156 <provider 157 android:name=".picker.PickCountRecordProvider" 158 android:authorities="com.android.documentsui.pickCountRecord" 159 android:exported="false"/> 160 161 <provider 162 android:name=".archives.ArchivesProvider" 163 android:authorities="com.android.documentsui.archives" 164 android:grantUriPermissions="true" 165 android:permission="android.permission.MANAGE_DOCUMENTS" 166 android:exported="true"> 167 <intent-filter> 168 <action android:name="android.content.action.DOCUMENTS_PROVIDER" /> 169 </intent-filter> 170 </provider> 171 172 <receiver android:name=".PackageReceiver"> 173 <intent-filter> 174 <action android:name="android.intent.action.PACKAGE_FULLY_REMOVED" /> 175 <action android:name="android.intent.action.PACKAGE_DATA_CLEARED" /> 176 <data android:scheme="package" /> 177 </intent-filter> 178 </receiver> 179 180 <receiver android:name=".roots.BootReceiver" android:enabled="false"> 181 <intent-filter> 182 <action android:name="android.intent.action.BOOT_COMPLETED" /> 183 </intent-filter> 184 </receiver> 185 186 <receiver android:name=".PreBootReceiver"> 187 <intent-filter> 188 <action android:name="android.intent.action.PRE_BOOT_COMPLETED" /> 189 </intent-filter> 190 </receiver> 191 192 <!-- Run FileOperationService in a separate process so that we can use FileLock class to 193 wait until jumbo clip is done writing to disk before reading it. See ClipStorage for 194 details. --> 195 <service 196 android:name=".services.FileOperationService" 197 android:exported="false" 198 android:process=":com.android.documentsui.services"> 199 </service> 200 201 <activity 202 android:name=".selection.demo.SelectionDemoActivity" 203 android:label="Selection Demo" 204 android:theme="@style/DocumentsTheme"> 205 <intent-filter> 206 <action android:name="android.intent.action.MAIN" /> 207 </intent-filter> 208 </activity> 209 210 </application> 211</manifest> 212