878 lines
41 KiB
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>
|