Home | History | Annotate | Download | only in SystemUI
      1 <?xml version="1.0" encoding="utf-8"?>
      2 <!--
      3 /*
      4  * Copyright (c) 2014 Google Inc.
      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         xmlns:androidprv="http://schemas.android.com/apk/prv/res/android"
     21         package="com.android.systemui"
     22         android:sharedUserId="android.uid.systemui"
     23         coreApp="true">
     24 
     25     <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
     26     <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
     27     <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
     28     <uses-permission android:name="android.permission.ACCESS_ALL_EXTERNAL_STORAGE" />
     29     <uses-permission android:name="android.permission.WAKE_LOCK" />
     30 
     31     <uses-permission android:name="android.permission.INJECT_EVENTS" />
     32     <uses-permission android:name="android.permission.DUMP" />
     33     <uses-permission android:name="android.permission.WRITE_SETTINGS" />
     34 
     35     <uses-permission android:name="android.permission.STATUS_BAR_SERVICE" />
     36     <uses-permission android:name="android.permission.STATUS_BAR" />
     37     <uses-permission android:name="android.permission.EXPAND_STATUS_BAR" />
     38     <uses-permission android:name="android.permission.REMOTE_AUDIO_PLAYBACK" />
     39 
     40     <uses-permission android:name="android.permission.MANAGE_USERS" />
     41     <uses-permission android:name="android.permission.READ_PROFILE" />
     42     <uses-permission android:name="android.permission.READ_CONTACTS" />
     43     <uses-permission android:name="android.permission.CONFIGURE_WIFI_DISPLAY" />
     44     <uses-permission android:name="android.permission.WRITE_SECURE_SETTINGS" />
     45     <uses-permission android:name="android.permission.GET_APP_OPS_STATS" />
     46 
     47     <!-- Networking and telephony -->
     48     <uses-permission android:name="android.permission.BLUETOOTH" />
     49     <uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
     50     <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
     51     <uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" />
     52     <uses-permission android:name="android.permission.READ_PHONE_STATE" />
     53     <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
     54     <uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
     55     <uses-permission android:name="android.permission.MANAGE_NETWORK_POLICY" />
     56     <uses-permission android:name="android.permission.CONNECTIVITY_INTERNAL" />
     57     <uses-permission android:name="android.permission.READ_NETWORK_USAGE_HISTORY" />
     58 
     59     <!-- Physical hardware -->
     60     <uses-permission android:name="android.permission.MANAGE_USB" />
     61     <uses-permission android:name="android.permission.DEVICE_POWER" />
     62     <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
     63     <uses-permission android:name="android.permission.MASTER_CLEAR" />
     64     <uses-permission android:name="android.permission.VIBRATE" />
     65 
     66     <!-- ActivityManager -->
     67     <uses-permission android:name="android.permission.REAL_GET_TASKS" />
     68     <uses-permission android:name="android.permission.GET_DETAILED_TASKS" />
     69     <uses-permission android:name="android.permission.REORDER_TASKS" />
     70     <uses-permission android:name="android.permission.REMOVE_TASKS" />
     71     <uses-permission android:name="android.permission.STOP_APP_SWITCHES" />
     72     <uses-permission android:name="android.permission.SET_SCREEN_COMPATIBILITY" />
     73     <uses-permission android:name="android.permission.START_ANY_ACTIVITY" />
     74     <uses-permission android:name="android.permission.INTERACT_ACROSS_USERS" />
     75     <uses-permission android:name="android.permission.INTERACT_ACROSS_USERS_FULL" />
     76     <uses-permission android:name="android.permission.GET_TOP_ACTIVITY_INFO" />
     77     <uses-permission android:name="android.permission.MANAGE_ACTIVITY_STACKS" />
     78     <uses-permission android:name="android.permission.START_TASKS_FROM_RECENTS" />
     79 
     80     <!-- WindowManager -->
     81     <uses-permission android:name="android.permission.INTERNAL_SYSTEM_WINDOW" />
     82     <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
     83     <uses-permission android:name="android.permission.READ_FRAME_BUFFER" />
     84     <uses-permission android:name="android.permission.MANAGE_APP_TOKENS" />
     85     <uses-permission android:name="android.permission.SET_ORIENTATION" />
     86     <uses-permission android:name="android.permission.DISABLE_KEYGUARD" />
     87 
     88     <!-- DreamManager -->
     89     <uses-permission android:name="android.permission.READ_DREAM_STATE" />
     90     <uses-permission android:name="android.permission.WRITE_DREAM_STATE" />
     91 
     92     <!-- Alarm clocks -->
     93     <uses-permission android:name="com.android.alarm.permission.SET_ALARM" />
     94 
     95     <!-- Keyguard -->
     96     <uses-permission android:name="android.permission.CONTROL_KEYGUARD" />
     97     <uses-permission android:name="android.permission.MODIFY_PHONE_STATE" />
     98     <uses-permission android:name="android.permission.GET_ACCOUNTS" />
     99     <uses-permission android:name="android.permission.MANAGE_ACCOUNTS" />
    100     <uses-permission android:name="android.permission.BIND_DEVICE_ADMIN" />
    101     <uses-permission android:name="android.permission.CHANGE_COMPONENT_ENABLED_STATE" />
    102     <uses-permission android:name="android.permission.MEDIA_CONTENT_CONTROL" />
    103     <uses-permission android:name="android.permission.ACCESS_KEYGUARD_SECURE_STORAGE" />
    104     <uses-permission android:name="android.permission.TRUST_LISTENER" />
    105 
    106     <!-- Recents -->
    107     <uses-permission android:name="android.permission.BIND_APPWIDGET" />
    108 
    109     <!-- Wifi Display -->
    110     <uses-permission android:name="android.permission.CONFIGURE_WIFI_DISPLAY" />
    111 
    112     <uses-permission android:name="android.permission.CAMERA" />
    113 
    114     <!-- Screen Capturing -->
    115     <uses-permission android:name="android.permission.MANAGE_MEDIA_PROJECTION" />
    116 
    117     <application
    118         android:name=".SystemUIApplication"
    119         android:persistent="true"
    120         android:allowClearUserData="false"
    121         android:allowBackup="false"
    122         android:hardwareAccelerated="true"
    123         android:label="@string/app_label"
    124         android:icon="@drawable/icon"
    125         android:process="com.android.systemui"
    126         android:supportsRtl="true"
    127         android:theme="@style/systemui_theme">
    128         <!-- Keep theme in sync with SystemUIApplication.onCreate().
    129              Setting the theme on the application does not affect views inflated by services.
    130              The application theme is set again from onCreate to take effect for those views. -->
    131 
    132         <!-- Broadcast receiver that gets the broadcast at boot time and starts
    133              up everything else.
    134              TODO: Should have an android:permission attribute
    135              -->
    136         <service android:name="SystemUIService"
    137             android:exported="true"
    138             />
    139 
    140         <!-- started from PhoneWindowManager
    141              TODO: Should have an android:permission attribute -->
    142         <service android:name=".screenshot.TakeScreenshotService"
    143             android:process=":screenshot"
    144             android:exported="false" />
    145 
    146         <service android:name=".LoadAverageService"
    147                 android:exported="true" />
    148 
    149         <service android:name=".ImageWallpaper"
    150                 android:permission="android.permission.BIND_WALLPAPER"
    151                 android:exported="true" />
    152 
    153         <receiver android:name=".BootReceiver" androidprv:primaryUserOnly="true">
    154             <intent-filter android:priority="1000">
    155                 <action android:name="android.intent.action.BOOT_COMPLETED" />
    156             </intent-filter>
    157         </receiver>
    158 
    159         <receiver android:name=".qs.tiles.HotspotTile$APChangedReceiver"
    160                 androidprv:primaryUserOnly="true">
    161             <intent-filter>
    162                 <action android:name="android.net.wifi.WIFI_AP_STATE_CHANGED" />
    163             </intent-filter>
    164         </receiver>
    165 
    166         <activity android:name=".usb.UsbStorageActivity"
    167                   android:label="@*android:string/usb_storage_activity_title"
    168                   android:excludeFromRecents="true">
    169         </activity>
    170         <activity android:name="com.android.internal.app.ExternalMediaFormatActivity"
    171                 android:theme="@*android:style/Theme.Dialog.Alert"
    172                 android:excludeFromRecents="true">
    173         </activity>
    174 
    175         <activity android:name=".recent.RecentsActivity"
    176                 android:label="@string/accessibility_desc_recent_apps"
    177                 android:theme="@style/RecentsStyle"
    178                 android:excludeFromRecents="true"
    179                 android:launchMode="singleInstance"
    180                 android:resumeWhilePausing="true"
    181                 android:exported="true">
    182           <intent-filter>
    183             <action android:name="com.android.systemui.TOGGLE_RECENTS" />
    184           </intent-filter>
    185         </activity>
    186 
    187         <receiver
    188             android:name=".recent.RecentsPreloadReceiver"
    189             android:exported="false">
    190             <intent-filter>
    191                 <action android:name="com.android.systemui.recent.action.PRELOAD" />
    192                 <action android:name="com.android.systemui.recent.action.CANCEL_PRELOAD" />
    193             </intent-filter>
    194         </receiver>
    195 
    196         <!-- Alternate Recents -->
    197         <activity android:name=".recents.RecentsActivity"
    198                   android:label="@string/accessibility_desc_recent_apps"
    199                   android:launchMode="singleInstance"
    200                   android:excludeFromRecents="true"
    201                   android:stateNotNeeded="true"
    202                   android:resumeWhilePausing="true"
    203                   android:theme="@style/config_recents_activity_theme">
    204             <intent-filter>
    205                 <action android:name="com.android.systemui.recents.TOGGLE_RECENTS" />
    206             </intent-filter>
    207         </activity>
    208 
    209         <!-- started from UsbDeviceSettingsManager -->
    210         <activity android:name=".usb.UsbConfirmActivity"
    211             android:exported="true"
    212             android:permission="android.permission.MANAGE_USB"
    213             android:theme="@*android:style/Theme.DeviceDefault.Light.Dialog.Alert"
    214             android:finishOnCloseSystemDialogs="true"
    215             android:excludeFromRecents="true">
    216         </activity>
    217 
    218         <!-- started from UsbDeviceSettingsManager -->
    219         <activity android:name=".usb.UsbPermissionActivity"
    220             android:exported="true"
    221             android:permission="android.permission.MANAGE_USB"
    222             android:theme="@*android:style/Theme.DeviceDefault.Light.Dialog.Alert"
    223             android:finishOnCloseSystemDialogs="true"
    224             android:excludeFromRecents="true">
    225         </activity>
    226 
    227         <!-- started from UsbDeviceSettingsManager -->
    228         <activity android:name=".usb.UsbResolverActivity"
    229             android:exported="true"
    230             android:permission="android.permission.MANAGE_USB"
    231             android:theme="@*android:style/Theme.DeviceDefault.Light.Dialog.Alert"
    232             android:finishOnCloseSystemDialogs="true"
    233             android:excludeFromRecents="true">
    234         </activity>
    235 
    236         <!-- started from UsbDeviceSettingsManager -->
    237         <activity android:name=".usb.UsbAccessoryUriActivity"
    238             android:exported="true"
    239             android:permission="android.permission.MANAGE_USB"
    240             android:theme="@*android:style/Theme.DeviceDefault.Light.Dialog.Alert"
    241             android:finishOnCloseSystemDialogs="true"
    242             android:excludeFromRecents="true">
    243         </activity>
    244 
    245         <!-- started from UsbDebuggingManager -->
    246         <activity android:name=".usb.UsbDebuggingActivity"
    247             android:permission="android.permission.MANAGE_USB"
    248             android:theme="@*android:style/Theme.DeviceDefault.Light.Dialog.Alert"
    249             android:finishOnCloseSystemDialogs="true"
    250             android:excludeFromRecents="true">
    251         </activity>
    252 
    253         <!-- started from NetworkPolicyManagerService -->
    254         <activity
    255             android:name=".net.NetworkOverLimitActivity"
    256             android:exported="true"
    257             android:permission="android.permission.MANAGE_NETWORK_POLICY"
    258             android:theme="@android:style/Theme.DeviceDefault.Light.Panel"
    259             android:finishOnCloseSystemDialogs="true"
    260             android:launchMode="singleTop"
    261             android:taskAffinity="com.android.systemui.net"
    262             android:excludeFromRecents="true" />
    263 
    264         <!-- started from MediaProjectionManager -->
    265         <activity
    266             android:name=".media.MediaProjectionPermissionActivity"
    267             android:exported="true"
    268             android:theme="@*android:style/Theme.DeviceDefault.Light.Dialog.Alert"
    269             android:finishOnCloseSystemDialogs="true"
    270             android:launchMode="singleTop"
    271             android:excludeFromRecents="true" />
    272 
    273         <!-- platform logo easter egg activity -->
    274         <activity
    275             android:name=".DessertCase"
    276             android:exported="true"
    277             android:label="@string/dessert_case"
    278             android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen"
    279             android:hardwareAccelerated="true"
    280             android:launchMode="singleInstance"
    281             android:screenOrientation="locked"
    282             android:process=":sweetsweetdesserts"
    283             android:excludeFromRecents="true">
    284             <intent-filter>
    285                 <action android:name="android.intent.action.MAIN" />
    286                 <category android:name="android.intent.category.DEFAULT" />
    287             </intent-filter>
    288         </activity>
    289 
    290         <activity android:name=".egg.LLandActivity"
    291                   android:theme="@android:style/Theme.Material.Light.NoActionBar"
    292                   android:exported="true"
    293                   android:label="@string/lland"
    294                   android:hardwareAccelerated="true"
    295                   android:launchMode="singleInstance"
    296                   android:screenOrientation="locked"
    297                   android:process=":sweetsweetdesserts"
    298                   android:excludeFromRecents="true">
    299             <intent-filter>
    300                 <action android:name="android.intent.action.MAIN"/>
    301                 <category android:name="android.intent.category.DEFAULT" />
    302                 <category android:name="com.android.internal.category.PLATLOGO" />
    303             </intent-filter>
    304         </activity>
    305 
    306         <!-- a gallery of delicious treats -->
    307         <service
    308             android:name=".DessertCaseDream"
    309             android:exported="true"
    310             android:label="@string/dessert_case"
    311             android:permission="android.permission.BIND_DREAM_SERVICE"
    312             android:enabled="false"
    313             android:process=":sweetsweetdesserts"
    314             >
    315             <intent-filter>
    316                 <action android:name="android.service.dreams.DreamService" />
    317                 <category android:name="android.intent.category.DEFAULT" />
    318             </intent-filter>
    319         </service>
    320 
    321         <service
    322             android:name=".keyguard.KeyguardService"
    323             android:exported="true"
    324             android:enabled="@bool/config_enableKeyguardService" />
    325 
    326         <activity android:name=".Somnambulator"
    327             android:label="@string/start_dreams"
    328             android:icon="@mipmap/ic_launcher_dreams"
    329             android:theme="@android:style/Theme.Wallpaper.NoTitleBar"
    330             android:exported="true"
    331             android:excludeFromRecents="true"
    332             >
    333             <!--
    334             <intent-filter>
    335                 <action android:name="android.intent.action.CREATE_SHORTCUT" />
    336                 <category android:name="android.intent.category.DEFAULT" />
    337             </intent-filter>
    338             -->
    339             <intent-filter>
    340                 <action android:name="android.intent.action.MAIN" />
    341                 <category android:name="android.intent.category.DEFAULT" />
    342                 <category android:name="android.intent.category.DESK_DOCK" />
    343             </intent-filter>
    344         </activity>
    345 
    346         <activity
    347             android:name=".settings.BrightnessDialog"
    348             android:label="@string/quick_settings_brightness_dialog_title"
    349             android:theme="@android:style/Theme.DeviceDefault.Dialog"
    350             android:finishOnCloseSystemDialogs="true"
    351             android:launchMode="singleInstance"
    352             android:excludeFromRecents="true"
    353             android:exported="true">
    354             <intent-filter>
    355                 <action android:name="android.intent.action.SHOW_BRIGHTNESS_DIALOG" />
    356                 <category android:name="android.intent.category.DEFAULT" />
    357             </intent-filter>
    358         </activity>
    359 
    360         <!-- Doze with notifications, run in main sysui process for every user  -->
    361         <service
    362             android:name=".doze.DozeService"
    363             android:exported="true"
    364             android:singleUser="true"
    365             android:permission="android.permission.BIND_DREAM_SERVICE" />
    366     </application>
    367 </manifest>
    368