ha-android/app/src/main/AndroidManifest.xml

878 lines
41 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools">
<uses-sdk tools:overrideLibrary="androidx.wear.remote.interactions,androidx.car.app.projected" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.CHANGE_WIFI_MULTICAST_STATE" />
<uses-permission android:name="android.permission.BLUETOOTH"
android:maxSdkVersion="30"/>
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN"
android:maxSdkVersion="30"/>
<uses-permission android:name="android.permission.BLUETOOTH_ADVERTISE" />
<uses-permission android:name="android.permission.BLUETOOTH_CONNECT" />
<uses-permission android:name="android.permission.BLUETOOTH_SCAN" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.CALL_PHONE" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
<uses-permission android:name="android.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS" />
<uses-permission android:name="android.permission.NFC" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.ACTIVITY_RECOGNITION" />
<uses-permission android:name="com.google.android.gms.permission.ACTIVITY_RECOGNITION" />
<uses-permission android:name="android.permission.ACCESS_NOTIFICATION_POLICY" />
<uses-permission android:name="android.permission.QUERY_ALL_PACKAGES"
tools:ignore="QueryAllPackagesPermission" />
<uses-permission android:name="com.android.alarm.permission.SET_ALARM" />
<uses-permission android:name="android.permission.FOREGROUND_SERVICE"/>
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"
android:maxSdkVersion="28"/>
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.SCHEDULE_EXACT_ALARM" />
<uses-permission android:name="android.permission.PACKAGE_USAGE_STATS"
tools:ignore="ProtectedPermissions" />
<uses-permission android:name="android.permission.POST_NOTIFICATIONS" />
<uses-permission android:name="android.permission.WRITE_SETTINGS"
tools:ignore="ProtectedPermissions"/>
<uses-feature android:name="android.hardware.touchscreen" android:required="false"/>
<uses-feature android:name="android.hardware.telephony" android:required="false"/>
<uses-feature android:name="android.hardware.camera" android:required="false"/>
<uses-feature android:name="android.hardware.nfc" android:required="false"/>
<uses-feature android:name="android.hardware.location.gps" android:required="false"/>
<uses-feature android:name="android.hardware.sensor" android:required="false"/>
<uses-feature android:name="android.hardware.microphone" android:required="false" />
<uses-feature android:name="android.software.leanback" android:required="false" />
<uses-feature android:name="android.hardware.bluetooth" android:required="false" />
<application
android:name="io.homeassistant.companion.android.HomeAssistantApplication"
android:allowBackup="true"
android:fullBackupContent="@xml/backup_rules"
android:dataExtractionRules="@xml/backup_rules_android12"
android:icon="@mipmap/ic_launcher"
android:banner="@mipmap/ic_banner"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/Theme.HomeAssistant"
android:networkSecurityConfig="@xml/network_security_config"
android:enableOnBackInvokedCallback="true"
android:localeConfig="@xml/locales_config"
tools:ignore="GoogleAppIndexingWarning"
tools:targetApi="tiramisu">
<!-- Start things like SensorWorker on device boot -->
<receiver android:name=".websocket.WebsocketBroadcastReceiver"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
<action android:name="android.intent.action.MY_PACKAGE_REPLACED" />
<action android:name="android.intent.action.MY_PACKAGE_SUSPENDED" />
<action android:name="android.intent.action.MY_PACKAGE_UNSUSPENDED" />
<action android:name="android.intent.action.QUICKBOOT_POWERON" />
<action android:name="com.htc.intent.action.QUICKBOOT_POWERON" />
<action android:name="android.app.action.NEXT_ALARM_CLOCK_CHANGED" />
<action android:name="android.bluetooth.device.action.ACL_CONNECTED" />
<action android:name="android.bluetooth.device.action.ACL_DISCONNECTED" />
</intent-filter>
</receiver>
<receiver android:name=".sensors.SensorReceiver"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
<action android:name="android.intent.action.MY_PACKAGE_REPLACED" />
<action android:name="android.intent.action.MY_PACKAGE_SUSPENDED" />
<action android:name="android.intent.action.MY_PACKAGE_UNSUSPENDED" />
<action android:name="android.intent.action.QUICKBOOT_POWERON" />
<action android:name="com.htc.intent.action.QUICKBOOT_POWERON" />
<action android:name="android.app.action.NEXT_ALARM_CLOCK_CHANGED" />
<action android:name="android.bluetooth.device.action.ACL_CONNECTED" />
<action android:name="android.bluetooth.device.action.ACL_DISCONNECTED" />
<action android:name="io.homeassistant.companion.android.UPDATE_SENSORS" />
</intent-filter>
</receiver>
<receiver android:name=".widgets.button.ButtonWidget" android:label="@string/widget_button_image_description"
android:exported="false">
<intent-filter>
<action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
<action android:name="io.homeassistant.companion.android.widgets.ButtonWidget.CALL_SERVICE" />
<action android:name="io.homeassistant.companion.android.widgets.ButtonWidget.CALL_SERVICE_AUTH" />
<action android:name="io.homeassistant.companion.android.widgets.ButtonWidget.RECEIVE_DATA" />
</intent-filter>
<meta-data
android:name="android.appwidget.provider"
android:resource="@xml/button_widget_info" />
</receiver>
<receiver android:name=".widgets.camera.CameraWidget" android:label="@string/widget_camera_description"
android:exported="false">
<intent-filter>
<action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
<action android:name="io.homeassistant.companion.android.widgets.camera.CameraWidget.RECEIVE_DATA" />
<action android:name="io.homeassistant.companion.android.widgets.camera.CameraWidget.UPDATE_IMAGE" />
</intent-filter>
<meta-data
android:name="android.appwidget.provider"
android:resource="@xml/camera_widget_info" />
</receiver>
<receiver android:name=".widgets.entity.EntityWidget" android:label="@string/widget_static_image_description"
android:exported="false">
<intent-filter>
<action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
<action android:name="io.homeassistant.companion.android.widgets.StaticWidget.RECEIVE_DATA" />
</intent-filter>
<meta-data
android:name="android.appwidget.provider"
android:resource="@xml/entity_widget_info" />
</receiver>
<receiver android:name=".widgets.mediaplayer.MediaPlayerControlsWidget" android:label="@string/widget_media_player_description"
android:exported="false">
<intent-filter>
<action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
<action android:name="io.homeassistant.companion.android.widgets.media_player_controls.MediaPlayerControlsWidget.RECEIVE_DATA" />
<action android:name="io.homeassistant.companion.android.widgets.media_player_controls.MediaPlayerControlsWidget.UPDATE_MEDIA_IMAGE" />
<action android:name="io.homeassistant.companion.android.widgets.media_player_controls.MediaPlayerControlsWidget.CALL_PREV_TRACK" />
<action android:name="io.homeassistant.companion.android.widgets.media_player_controls.MediaPlayerControlsWidget.CALL_REWIND" />
<action android:name="io.homeassistant.companion.android.widgets.media_player_controls.MediaPlayerControlsWidget.CALL_PLAYPAUSE" />
<action android:name="io.homeassistant.companion.android.widgets.media_player_controls.MediaPlayerControlsWidget.CALL_FASTFORWARD" />
<action android:name="io.homeassistant.companion.android.widgets.media_player_controls.MediaPlayerControlsWidget.CALL_NEXT_TRACK" />
</intent-filter>
<meta-data
android:name="android.appwidget.provider"
android:resource="@xml/media_player_control_widget_info" />
</receiver>
<receiver android:name=".widgets.template.TemplateWidget" android:label="@string/template_widget"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
<action android:name="android.intent.action.QUICKBOOT_POWERON" />
<action android:name="com.htc.intent.action.QUICKBOOT_POWERON" />
<action android:name="android.app.action.NEXT_ALARM_CLOCK_CHANGED" />
<action android:name="android.bluetooth.device.action.ACL_CONNECTED" />
<action android:name="android.bluetooth.device.action.ACL_DISCONNECTED" />
<action android:name="io.homeassistant.companion.android.background.REQUEST_SENSORS_UPDATE" />
<action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
<action android:name="io.homeassistant.companion.android.widgets.template.TemplateWidget.RECEIVE_DATA" />
</intent-filter>
<meta-data
android:name="android.appwidget.provider"
android:resource="@xml/template_widget_info" />
</receiver>
<activity android:name=".widgets.button.ButtonWidgetConfigureActivity"
android:configChanges="orientation|screenSize"
android:exported="true">
<intent-filter>
<action android:name="android.appwidget.action.APPWIDGET_CONFIGURE" />
</intent-filter>
</activity>
<activity android:name=".widgets.common.WidgetAuthenticationActivity"
android:configChanges="orientation|screenSize"
android:exported="true"
android:theme="@style/Theme.Transparent">
</activity>
<activity android:name=".widgets.camera.CameraWidgetConfigureActivity"
android:configChanges="orientation|screenSize"
android:exported="true">
<intent-filter>
<action android:name="android.appwidget.action.APPWIDGET_CONFIGURE" />
</intent-filter>
</activity>
<activity android:name=".widgets.entity.EntityWidgetConfigureActivity"
android:configChanges="orientation|screenSize"
android:exported="true">
<intent-filter>
<action android:name="android.appwidget.action.APPWIDGET_CONFIGURE" />
</intent-filter>
</activity>
<activity android:name=".widgets.mediaplayer.MediaPlayerControlsWidgetConfigureActivity"
android:configChanges="orientation|screenSize"
android:exported="true">
<intent-filter>
<action android:name="android.appwidget.action.APPWIDGET_CONFIGURE" />
</intent-filter>
</activity>
<activity android:name=".widgets.template.TemplateWidgetConfigureActivity"
android:exported="true">
<intent-filter>
<action android:name="android.appwidget.action.APPWIDGET_CONFIGURE" />
</intent-filter>
</activity>
<service android:name=".sensors.NotificationSensorManager"
android:permission="android.permission.BIND_NOTIFICATION_LISTENER_SERVICE"
android:exported="true">
<intent-filter>
<action android:name="android.service.notification.NotificationListenerService"/>
</intent-filter>
</service>
<service android:name=".controls.HaControlsProviderService"
android:permission="android.permission.BIND_CONTROLS"
android:exported="true">
<meta-data
android:name="android.service.controls.META_DATA_PANEL_ACTIVITY"
android:value="${applicationId}/io.homeassistant.companion.android.controls.HaControlsPanelActivity" />
<intent-filter>
<action android:name="android.service.controls.ControlsProviderService"/>
</intent-filter>
</service>
<activity android:name=".controls.HaControlsPanelActivity"
android:permission="android.permission.BIND_CONTROLS"
android:exported="true"
android:resizeableActivity="true"
android:taskAffinity="io.homeassistant.companion.android.controls"
android:enabled="false" />
<receiver
android:name=".sensors.LocationSensorManager"
android:enabled="true"
android:exported="true">
<intent-filter>
<action android:name="io.homeassistant.companion.android.background.REQUEST_ACCURATE_UPDATE" />
</intent-filter>
</receiver>
<receiver
android:name=".sensors.ActivitySensorManager"
android:enabled="true"
android:exported="true">
<intent-filter>
<action android:name="io.homeassistant.companion.android.background.REQUEST_ACTIVITY_UPDATES" />
</intent-filter>
</receiver>
<activity android:name=".launch.LaunchActivity"
android:exported="true"
android:theme="@style/Theme.LaunchScreen">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LEANBACK_LAUNCHER" />
</intent-filter>
<intent-filter android:autoVerify="true">
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data
android:scheme="homeassistant"
android:host="navigate" />
</intent-filter>
</activity>
<activity android:name=".launch.my.MyActivity"
android:exported="true">
<intent-filter android:autoVerify="true">
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data
android:scheme="https"
android:host="my.home-assistant.io"
android:pathPrefix="/redirect/"/>
</intent-filter>
</activity>
<activity
android:name=".onboarding.OnboardingActivity"
android:configChanges="orientation|screenSize|keyboard|keyboardHidden|navigation"
android:theme="@style/Theme.HomeAssistant.Config" />
<activity
android:name=".settings.wear.SettingsWearActivity"
android:parentActivityName=".settings.SettingsActivity"
android:configChanges="orientation|screenSize"
android:exported="true"
android:theme="@style/Theme.HomeAssistant.Config">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data
android:scheme="homeassistant"
android:host="wear-phone-signin" />
</intent-filter>
</activity>
<activity
android:name=".settings.wear.views.SettingsWearMainView"
android:parentActivityName=".settings.SettingsActivity"
android:configChanges="orientation|screenSize"
android:theme="@style/Theme.HomeAssistant.Config" />
<service android:name=".onboarding.WearOnboardingListener"
android:exported="true">
<intent-filter>
<action android:name="com.google.android.gms.wearable.MESSAGE_RECEIVED" />
<action android:name="com.google.android.gms.wearable.DATA_CHANGED" />
<data android:scheme="wear" android:host="*"
android:path="/request_home_assistant_instance" />
</intent-filter>
</service>
<activity
android:name=".webview.WebViewActivity"
android:supportsPictureInPicture="true"
android:resizeableActivity="true"
android:exported="false"
android:configChanges="orientation|screenSize|smallestScreenSize|screenLayout|keyboard|keyboardHidden|navigation" />
<activity
android:name=".settings.SettingsActivity"
android:parentActivityName=".webview.WebViewActivity"
android:exported="false"
android:configChanges="orientation|screenSize"
android:theme="@style/Theme.HomeAssistant.Config"/>
<activity
android:name=".nfc.TagReaderActivity"
android:label="@string/tag_reader_title"
android:exported="true">
<tools:validation testUrl="https://www.home-assistant.io/tag/123e4567-e89b-12d3-a456-426614174000" />
<intent-filter>
<action android:name="android.nfc.action.NDEF_DISCOVERED" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data
android:scheme="https"
android:host="www.home-assistant.io"
android:pathPrefix="/tag/" />
</intent-filter>
<intent-filter android:autoVerify="true">
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data
android:scheme="https"
android:host="www.home-assistant.io"
android:pathPrefix="/tag/" />
</intent-filter>
</activity>
<activity
android:name=".nfc.NfcSetupActivity"
android:exported="false"
android:label="@string/nfc_title_nfc_setup"
android:theme="@style/Theme.HomeAssistant.Config" />
<activity android:name=".share.ShareActivity"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.SEND" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="text/*" />
</intent-filter>
</activity>
<activity android:name=".assist.AssistActivity"
android:exported="true"
android:windowSoftInputMode="adjustResize"
android:launchMode="singleTask"
android:taskAffinity="io.homeassistant.companion.android.assist"
android:autoRemoveFromRecents="true"
android:showWhenLocked="true"
android:theme="@style/Theme.HomeAssistant.Assist">
<intent-filter>
<action android:name="android.intent.action.ASSIST" />
<action android:name="android.intent.action.VOICE_COMMAND" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
<activity android:name=".widgets.assist.AssistShortcutActivity"
android:label="@string/assist_shortcut"
android:icon="@mipmap/ic_assist_launcher"
android:exported="true"
android:excludeFromRecents="true"
android:theme="@style/Theme.HomeAssistant.Config">
<intent-filter>
<action android:name="android.intent.action.CREATE_SHORTCUT"/>
</intent-filter>
</activity>
<provider
android:name="androidx.core.content.FileProvider"
android:authorities="${applicationId}.provider"
android:exported="false"
android:grantUriPermissions="true">
<meta-data
android:name="android.support.FILE_PROVIDER_PATHS"
android:resource="@xml/provider_paths"/>
</provider>
<service
android:name=".qs.Tile1Service"
android:icon="@drawable/ic_stat_ic_notification"
android:label="@string/tile_1"
android:permission="android.permission.BIND_QUICK_SETTINGS_TILE"
android:exported="true">
<intent-filter>
<action android:name="android.service.quicksettings.action.QS_TILE"/>
</intent-filter>
</service>
<service
android:name=".qs.Tile2Service"
android:icon="@drawable/ic_stat_ic_notification"
android:label="@string/tile_2"
android:permission="android.permission.BIND_QUICK_SETTINGS_TILE"
android:exported="true">
<intent-filter>
<action android:name="android.service.quicksettings.action.QS_TILE"/>
</intent-filter>
</service>
<service
android:name=".qs.Tile3Service"
android:icon="@drawable/ic_stat_ic_notification"
android:label="@string/tile_3"
android:permission="android.permission.BIND_QUICK_SETTINGS_TILE"
android:exported="true">
<intent-filter>
<action android:name="android.service.quicksettings.action.QS_TILE"/>
</intent-filter>
</service>
<service
android:name=".qs.Tile4Service"
android:icon="@drawable/ic_stat_ic_notification"
android:label="@string/tile_4"
android:permission="android.permission.BIND_QUICK_SETTINGS_TILE"
android:exported="true">
<intent-filter>
<action android:name="android.service.quicksettings.action.QS_TILE"/>
</intent-filter>
</service>
<service
android:name=".qs.Tile5Service"
android:icon="@drawable/ic_stat_ic_notification"
android:label="@string/tile_5"
android:permission="android.permission.BIND_QUICK_SETTINGS_TILE"
android:exported="true">
<intent-filter>
<action android:name="android.service.quicksettings.action.QS_TILE"/>
</intent-filter>
</service>
<service
android:name=".qs.Tile6Service"
android:icon="@drawable/ic_stat_ic_notification"
android:label="@string/tile_6"
android:permission="android.permission.BIND_QUICK_SETTINGS_TILE"
android:exported="true">
<intent-filter>
<action android:name="android.service.quicksettings.action.QS_TILE"/>
</intent-filter>
</service>
<service
android:name=".qs.Tile7Service"
android:icon="@drawable/ic_stat_ic_notification"
android:label="@string/tile_7"
android:permission="android.permission.BIND_QUICK_SETTINGS_TILE"
android:exported="true">
<intent-filter>
<action android:name="android.service.quicksettings.action.QS_TILE"/>
</intent-filter>
</service>
<service
android:name=".qs.Tile8Service"
android:icon="@drawable/ic_stat_ic_notification"
android:label="@string/tile_8"
android:permission="android.permission.BIND_QUICK_SETTINGS_TILE"
android:exported="true">
<intent-filter>
<action android:name="android.service.quicksettings.action.QS_TILE"/>
</intent-filter>
</service>
<service
android:name=".qs.Tile9Service"
android:icon="@drawable/ic_stat_ic_notification"
android:label="@string/tile_9"
android:permission="android.permission.BIND_QUICK_SETTINGS_TILE"
android:exported="true">
<intent-filter>
<action android:name="android.service.quicksettings.action.QS_TILE"/>
</intent-filter>
</service>
<service
android:name=".qs.Tile10Service"
android:icon="@drawable/ic_stat_ic_notification"
android:label="@string/tile_10"
android:permission="android.permission.BIND_QUICK_SETTINGS_TILE"
android:exported="true">
<intent-filter>
<action android:name="android.service.quicksettings.action.QS_TILE"/>
</intent-filter>
</service>
<service
android:name=".qs.Tile11Service"
android:icon="@drawable/ic_stat_ic_notification"
android:label="@string/tile_11"
android:permission="android.permission.BIND_QUICK_SETTINGS_TILE"
android:exported="true">
<intent-filter>
<action android:name="android.service.quicksettings.action.QS_TILE"/>
</intent-filter>
</service>
<service
android:name=".qs.Tile12Service"
android:icon="@drawable/ic_stat_ic_notification"
android:label="@string/tile_12"
android:permission="android.permission.BIND_QUICK_SETTINGS_TILE"
android:exported="true">
<intent-filter>
<action android:name="android.service.quicksettings.action.QS_TILE"/>
</intent-filter>
</service>
<service
android:name=".qs.Tile13Service"
android:icon="@drawable/ic_stat_ic_notification"
android:label="@string/tile_13"
android:permission="android.permission.BIND_QUICK_SETTINGS_TILE"
android:enabled="false"
android:exported="true">
<intent-filter>
<action android:name="android.service.quicksettings.action.QS_TILE"/>
</intent-filter>
</service>
<service
android:name=".qs.Tile14Service"
android:icon="@drawable/ic_stat_ic_notification"
android:label="@string/tile_14"
android:permission="android.permission.BIND_QUICK_SETTINGS_TILE"
android:enabled="false"
android:exported="true">
<intent-filter>
<action android:name="android.service.quicksettings.action.QS_TILE"/>
</intent-filter>
</service>
<service
android:name=".qs.Tile15Service"
android:icon="@drawable/ic_stat_ic_notification"
android:label="@string/tile_15"
android:permission="android.permission.BIND_QUICK_SETTINGS_TILE"
android:enabled="false"
android:exported="true">
<intent-filter>
<action android:name="android.service.quicksettings.action.QS_TILE"/>
</intent-filter>
</service>
<service
android:name=".qs.Tile16Service"
android:icon="@drawable/ic_stat_ic_notification"
android:label="@string/tile_16"
android:permission="android.permission.BIND_QUICK_SETTINGS_TILE"
android:enabled="false"
android:exported="true">
<intent-filter>
<action android:name="android.service.quicksettings.action.QS_TILE"/>
</intent-filter>
</service>
<service
android:name=".qs.Tile17Service"
android:icon="@drawable/ic_stat_ic_notification"
android:label="@string/tile_17"
android:permission="android.permission.BIND_QUICK_SETTINGS_TILE"
android:enabled="false"
android:exported="true">
<intent-filter>
<action android:name="android.service.quicksettings.action.QS_TILE"/>
</intent-filter>
</service>
<service
android:name=".qs.Tile18Service"
android:icon="@drawable/ic_stat_ic_notification"
android:label="@string/tile_18"
android:permission="android.permission.BIND_QUICK_SETTINGS_TILE"
android:enabled="false"
android:exported="true">
<intent-filter>
<action android:name="android.service.quicksettings.action.QS_TILE"/>
</intent-filter>
</service>
<service
android:name=".qs.Tile19Service"
android:icon="@drawable/ic_stat_ic_notification"
android:label="@string/tile_19"
android:permission="android.permission.BIND_QUICK_SETTINGS_TILE"
android:enabled="false"
android:exported="true">
<intent-filter>
<action android:name="android.service.quicksettings.action.QS_TILE"/>
</intent-filter>
</service>
<service
android:name=".qs.Tile20Service"
android:icon="@drawable/ic_stat_ic_notification"
android:label="@string/tile_20"
android:permission="android.permission.BIND_QUICK_SETTINGS_TILE"
android:enabled="false"
android:exported="true">
<intent-filter>
<action android:name="android.service.quicksettings.action.QS_TILE"/>
</intent-filter>
</service>
<service
android:name=".qs.Tile21Service"
android:icon="@drawable/ic_stat_ic_notification"
android:label="@string/tile_21"
android:permission="android.permission.BIND_QUICK_SETTINGS_TILE"
android:enabled="false"
android:exported="true">
<intent-filter>
<action android:name="android.service.quicksettings.action.QS_TILE"/>
</intent-filter>
</service>
<service
android:name=".qs.Tile22Service"
android:icon="@drawable/ic_stat_ic_notification"
android:label="@string/tile_22"
android:permission="android.permission.BIND_QUICK_SETTINGS_TILE"
android:enabled="false"
android:exported="true">
<intent-filter>
<action android:name="android.service.quicksettings.action.QS_TILE"/>
</intent-filter>
</service>
<service
android:name=".qs.Tile23Service"
android:icon="@drawable/ic_stat_ic_notification"
android:label="@string/tile_23"
android:permission="android.permission.BIND_QUICK_SETTINGS_TILE"
android:enabled="false"
android:exported="true">
<intent-filter>
<action android:name="android.service.quicksettings.action.QS_TILE"/>
</intent-filter>
</service>
<service
android:name=".qs.Tile24Service"
android:icon="@drawable/ic_stat_ic_notification"
android:label="@string/tile_24"
android:permission="android.permission.BIND_QUICK_SETTINGS_TILE"
android:enabled="false"
android:exported="true">
<intent-filter>
<action android:name="android.service.quicksettings.action.QS_TILE"/>
</intent-filter>
</service>
<service
android:name=".qs.Tile25Service"
android:icon="@drawable/ic_stat_ic_notification"
android:label="@string/tile_25"
android:permission="android.permission.BIND_QUICK_SETTINGS_TILE"
android:enabled="false"
android:exported="true">
<intent-filter>
<action android:name="android.service.quicksettings.action.QS_TILE"/>
</intent-filter>
</service>
<service
android:name=".qs.Tile26Service"
android:icon="@drawable/ic_stat_ic_notification"
android:label="@string/tile_26"
android:permission="android.permission.BIND_QUICK_SETTINGS_TILE"
android:enabled="false"
android:exported="true">
<intent-filter>
<action android:name="android.service.quicksettings.action.QS_TILE"/>
</intent-filter>
</service>
<service
android:name=".qs.Tile27Service"
android:icon="@drawable/ic_stat_ic_notification"
android:label="@string/tile_27"
android:permission="android.permission.BIND_QUICK_SETTINGS_TILE"
android:enabled="false"
android:exported="true">
<intent-filter>
<action android:name="android.service.quicksettings.action.QS_TILE"/>
</intent-filter>
</service>
<service
android:name=".qs.Tile28Service"
android:icon="@drawable/ic_stat_ic_notification"
android:label="@string/tile_28"
android:permission="android.permission.BIND_QUICK_SETTINGS_TILE"
android:enabled="false"
android:exported="true">
<intent-filter>
<action android:name="android.service.quicksettings.action.QS_TILE"/>
</intent-filter>
</service>
<service
android:name=".qs.Tile29Service"
android:icon="@drawable/ic_stat_ic_notification"
android:label="@string/tile_29"
android:permission="android.permission.BIND_QUICK_SETTINGS_TILE"
android:enabled="false"
android:exported="true">
<intent-filter>
<action android:name="android.service.quicksettings.action.QS_TILE"/>
</intent-filter>
</service>
<service
android:name=".qs.Tile30Service"
android:icon="@drawable/ic_stat_ic_notification"
android:label="@string/tile_30"
android:permission="android.permission.BIND_QUICK_SETTINGS_TILE"
android:enabled="false"
android:exported="true">
<intent-filter>
<action android:name="android.service.quicksettings.action.QS_TILE"/>
</intent-filter>
</service>
<service
android:name=".qs.Tile31Service"
android:icon="@drawable/ic_stat_ic_notification"
android:label="@string/tile_31"
android:permission="android.permission.BIND_QUICK_SETTINGS_TILE"
android:enabled="false"
android:exported="true">
<intent-filter>
<action android:name="android.service.quicksettings.action.QS_TILE"/>
</intent-filter>
</service>
<service
android:name=".qs.Tile32Service"
android:icon="@drawable/ic_stat_ic_notification"
android:label="@string/tile_32"
android:permission="android.permission.BIND_QUICK_SETTINGS_TILE"
android:enabled="false"
android:exported="true">
<intent-filter>
<action android:name="android.service.quicksettings.action.QS_TILE"/>
</intent-filter>
</service>
<service
android:name=".qs.Tile33Service"
android:icon="@drawable/ic_stat_ic_notification"
android:label="@string/tile_33"
android:permission="android.permission.BIND_QUICK_SETTINGS_TILE"
android:enabled="false"
android:exported="true">
<intent-filter>
<action android:name="android.service.quicksettings.action.QS_TILE"/>
</intent-filter>
</service>
<service
android:name=".qs.Tile34Service"
android:icon="@drawable/ic_stat_ic_notification"
android:label="@string/tile_34"
android:permission="android.permission.BIND_QUICK_SETTINGS_TILE"
android:enabled="false"
android:exported="true">
<intent-filter>
<action android:name="android.service.quicksettings.action.QS_TILE"/>
</intent-filter>
</service>
<service
android:name=".qs.Tile35Service"
android:icon="@drawable/ic_stat_ic_notification"
android:label="@string/tile_35"
android:permission="android.permission.BIND_QUICK_SETTINGS_TILE"
android:enabled="false"
android:exported="true">
<intent-filter>
<action android:name="android.service.quicksettings.action.QS_TILE"/>
</intent-filter>
</service>
<service
android:name=".qs.Tile36Service"
android:icon="@drawable/ic_stat_ic_notification"
android:label="@string/tile_36"
android:permission="android.permission.BIND_QUICK_SETTINGS_TILE"
android:enabled="false"
android:exported="true">
<intent-filter>
<action android:name="android.service.quicksettings.action.QS_TILE"/>
</intent-filter>
</service>
<service
android:name=".qs.Tile37Service"
android:icon="@drawable/ic_stat_ic_notification"
android:label="@string/tile_37"
android:permission="android.permission.BIND_QUICK_SETTINGS_TILE"
android:enabled="false"
android:exported="true">
<intent-filter>
<action android:name="android.service.quicksettings.action.QS_TILE"/>
</intent-filter>
</service>
<service
android:name=".qs.Tile38Service"
android:icon="@drawable/ic_stat_ic_notification"
android:label="@string/tile_38"
android:permission="android.permission.BIND_QUICK_SETTINGS_TILE"
android:enabled="false"
android:exported="true">
<intent-filter>
<action android:name="android.service.quicksettings.action.QS_TILE"/>
</intent-filter>
</service>
<service
android:name=".qs.Tile39Service"
android:icon="@drawable/ic_stat_ic_notification"
android:label="@string/tile_39"
android:permission="android.permission.BIND_QUICK_SETTINGS_TILE"
android:enabled="false"
android:exported="true">
<intent-filter>
<action android:name="android.service.quicksettings.action.QS_TILE"/>
</intent-filter>
</service>
<service
android:name=".qs.Tile40Service"
android:icon="@drawable/ic_stat_ic_notification"
android:label="@string/tile_40"
android:permission="android.permission.BIND_QUICK_SETTINGS_TILE"
android:enabled="false"
android:exported="true">
<intent-filter>
<action android:name="android.service.quicksettings.action.QS_TILE"/>
</intent-filter>
</service>
<service
android:name="androidx.appcompat.app.AppLocalesMetadataHolderService"
android:enabled="false"
android:exported="false">
<meta-data
android:name="autoStoreLocales"
android:value="true" />
</service>
<receiver
android:name=".notifications.NotificationActionReceiver"
android:enabled="true"
android:exported="true" />
</application>
</manifest>