Xml文件  |  595行  |  28.38 KB

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.android.tv.settings"
    android:sharedUserId="android.uid.system"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
        android:minSdkVersion="23" />

    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-permission android:name="android.permission.BACKUP" />
    <uses-permission android:name="android.permission.BLUETOOTH" />
    <uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
    <uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
    <uses-permission android:name="android.permission.CLEAR_APP_USER_DATA" />
    <uses-permission android:name="android.permission.DELETE_CACHE_FILES" />
    <uses-permission android:name="android.permission.DUMP" />
    <uses-permission android:name="android.permission.FORCE_STOP_PACKAGES" />
    <uses-permission android:name="android.permission.GET_ACCOUNTS_PRIVILEGED" />
    <uses-permission android:name="android.permission.GET_PACKAGE_SIZE" />
    <uses-permission android:name="android.permission.INJECT_EVENTS" />
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.MANAGE_ACCOUNTS" />
    <uses-permission android:name="android.permission.MANAGE_USERS" />
    <uses-permission android:name="android.permission.OVERRIDE_WIFI_CONFIG" />
    <uses-permission android:name="android.permission.READ_CONTACTS" />
    <uses-permission android:name="android.permission.REBOOT" />
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
    <uses-permission android:name="android.permission.SET_PREFERRED_APPLICATIONS" />
    <uses-permission android:name="android.permission.SET_TIME" />
    <uses-permission android:name="android.permission.SET_TIME_ZONE" />
    <uses-permission android:name="android.permission.WRITE_MEDIA_STORAGE" />
    <uses-permission android:name="android.permission.WRITE_SETTINGS" />
    <uses-permission android:name="android.permission.WRITE_SECURE_SETTINGS" />
    <application
        android:icon="@drawable/logo_settings_color_48dp"
        android:label="@string/settings_app_name"
        android:banner="@drawable/ic_launcher_banner_settings"
        android:supportsRtl="true"
        android:theme="@style/Theme.Settings"
        android:usesCleartextTraffic="true"
        android:defaultToDeviceProtectedStorage="true"
        android:directBootAware="true">

        <activity
            android:name=".MainSettings"
            android:excludeFromRecents="true"
            android:theme="@style/Theme.Settings.Transparent"
            android:configChanges="keyboard|keyboardHidden|navigation"
            android:label="@string/settings_app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <action android:name="android.settings.SETTINGS" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>

            <!-- Intent filter used to display this activity as a settings
                 entry point in the LeanbackLauncher -->
            <intent-filter
                android:priority="3"
                android:label="@string/launcher_settings_app_name"
                android:icon="@drawable/ic_settings_launcher_icon" >
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LEANBACK_SETTINGS" />
            </intent-filter>
        </activity>

        <!-- WifiSetupActivity may be (usually is) started from setup so theme is
             determined at runtime -->
        <activity
            android:name=".connectivity.setup.WifiSetupActivity"
            android:clearTaskOnLaunch="true"
            android:excludeFromRecents="true"
            android:theme="@style/Theme.Setup"
            android:configChanges="keyboard|keyboardHidden|navigation" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <action android:name="com.android.net.wifi.SETUP_WIFI_NETWORK" />
                <!-- TODO remove custom action when stop including /packages/apps/Settings -->
                <action android:name="com.android.net.wifi.CANVAS_SETUP_WIFI_NETWORK" />

                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>
        <activity
            android:name=".connectivity.WifiConnectionActivity"
            android:clearTaskOnLaunch="true"
            android:configChanges="keyboard|keyboardHidden|navigation"
            android:excludeFromRecents="true"
            android:exported="true"
            android:theme="@style/Theme.Leanback.FormWizard.Solid" />
        <activity
            android:name=".connectivity.EditProxySettingsActivity"
            android:clearTaskOnLaunch="true"
            android:configChanges="keyboard|keyboardHidden|navigation"
            android:excludeFromRecents="true"
            android:theme="@style/Theme.Leanback.FormWizard.Solid" />
        <activity
            android:name=".connectivity.EditIpSettingsActivity"
            android:clearTaskOnLaunch="true"
            android:configChanges="keyboard|keyboardHidden|navigation"
            android:excludeFromRecents="true"
            android:theme="@style/Theme.Leanback.FormWizard.Solid" />
        <activity
            android:name=".connectivity.AddWifiNetworkActivity"
            android:clearTaskOnLaunch="true"
            android:configChanges="keyboard|keyboardHidden|navigation"
            android:excludeFromRecents="true"
            android:exported="true"
            android:theme="@style/Theme.Leanback.FormWizard.Solid" />
        <!-- WpsConnectionActivity may be started from setup so theme
             is determined at runtime -->
        <activity
            android:name=".connectivity.WpsConnectionActivity"
            android:configChanges="keyboard|keyboardHidden|navigation"
            android:excludeFromRecents="true"
            android:exported="true" />
        <activity
            android:name=".accounts.AccountSyncActivity"
            android:theme="@style/Theme.Settings.Transparent"
            android:configChanges="keyboard|keyboardHidden|navigation"
            android:excludeFromRecents="true"
            android:exported="true" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <action android:name="android.settings.ACCOUNT_SYNC_SETTINGS" />

                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>
        <activity
            android:name=".accounts.RemoveAccountDialog"
            android:configChanges="keyboard|keyboardHidden|navigation"
            android:excludeFromRecents="true" />
        <activity
            android:name=".accounts.AddAccountWithTypeActivity"
            android:excludeFromRecents="true"
            android:exported="true" >
            <intent-filter>
                <action android:name="android.settings.ADD_ACCOUNT_SETTINGS" />

                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>
        <activity
            android:name=".device.apps.AppsActivity"
            android:theme="@style/Theme.Settings.Transparent"
            android:configChanges="keyboard|keyboardHidden|navigation"
            android:excludeFromRecents="true"
            android:exported="true" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <action android:name="android.settings.APPLICATION_SETTINGS" />
                <action android:name="android.settings.MANAGE_APPLICATIONS_SETTINGS" />
                <action android:name="android.settings.MANAGE_ALL_APPLICATIONS_SETTINGS" />

                <category android:name="android.intent.category.DEFAULT" />
                <category android:name="android.intent.category.VOICE_LAUNCH" />
                <category android:name="com.android.settings.SHORTCUT" />
            </intent-filter>
        </activity>
        <activity
            android:name=".device.apps.AppManagementActivity"
            android:theme="@style/Theme.Settings.Transparent"
            android:configChanges="keyboard|keyboardHidden|navigation"
            android:excludeFromRecents="true"
            android:exported="true" >
            <intent-filter android:priority="1">
                <action android:name="android.settings.APPLICATION_DETAILS_SETTINGS" />
                <category android:name="android.intent.category.DEFAULT" />
                <data android:scheme="package" />
            </intent-filter>
        </activity>
        <activity
            android:name=".device.StorageResetActivity"
            android:theme="@style/Theme.Settings.Transparent"
            android:configChanges="keyboard|keyboardHidden|navigation"
            android:excludeFromRecents="true"
            android:exported="true">
            <intent-filter android:priority="1">
                <action android:name="android.settings.INTERNAL_STORAGE_SETTINGS" />
                <action android:name="android.settings.MEMORY_CARD_SETTINGS" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.DEFAULT" />
                <action android:name="android.intent.action.MANAGE_PACKAGE_STORAGE" />
                <action android:name="android.os.storage.action.MANAGE_STORAGE" />
            </intent-filter>
        </activity>
        <activity android:name=".device.storage.ResetActivity"
            android:theme="@style/Theme.Settings.Transparent"
            android:configChanges="keyboard|keyboardHidden|navigation"
            android:excludeFromRecents="true" />
        <activity android:name=".connectivity.NetworkActivity"
            android:theme="@style/Theme.Settings.Transparent"
            android:configChanges="keyboard|keyboardHidden|navigation"
            android:excludeFromRecents="true"
            android:exported="true" >

            <!-- Intent filter used to display this activity as a settings
                 entry point in the LeanbackLauncher -->
            <intent-filter
                android:priority="2"
                android:label="@string/launcher_network_app_name"
                android:icon="@drawable/ic_settings_wifi_active_0_launcher" >
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LEANBACK_SETTINGS" />
            </intent-filter>

            <intent-filter>
                <action android:name="android.settings.WIFI_SETTINGS" />
                <category android:name="android.intent.category.DEFAULT" />
                <category android:name="android.intent.category.LEANBACK_SETTINGS" />
            </intent-filter>
        </activity>
        <activity
            android:name=".system.SecurityActivity"
            android:theme="@style/Theme.Settings.Transparent"
            android:configChanges="keyboard|keyboardHidden|navigation"
            android:excludeFromRecents="true"
            android:exported="true" >
            <intent-filter>
                <action android:name="android.settings.SECURITY_SETTINGS" />

                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>
        <activity-alias
            android:name=".users.RestrictedProfileActivityLauncherEntry"
            android:enabled="false"
            android:excludeFromRecents="true"
            android:exported="true"
            android:targetActivity=".system.SecurityActivity" >

            <!--
                 Intent filter used to display this activity as a settings
                 entry point in the LeanbackLauncher
            -->
            <intent-filter
                android:icon="@drawable/ic_settings_restricted_profile_launcher"
                android:label="@string/launcher_restricted_profile_app_name"
                android:priority="0" >
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LEANBACK_SETTINGS" />
            </intent-filter>
        </activity-alias>
        <activity
            android:name=".device.sound.SoundActivity"
            android:theme="@style/Theme.Settings.Transparent"
            android:configChanges="keyboard|keyboardHidden|navigation"
            android:excludeFromRecents="true"
            android:exported="true" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <action android:name="com.android.settings.SOUND_SETTINGS" />
                <action android:name="android.settings.SOUND_SETTINGS" />

                <category android:name="android.intent.category.DEFAULT" />
                <category android:name="android.intent.category.VOICE_LAUNCH" />
                <category android:name="com.android.settings.SHORTCUT" />
            </intent-filter>
        </activity>
        <activity
            android:name=".device.display.daydream.DaydreamActivity"
            android:theme="@style/Theme.Settings.Transparent"
            android:configChanges="keyboard|keyboardHidden|navigation"
            android:excludeFromRecents="true"
            android:exported="true" />
        <activity
            android:name=".device.display.daydream.DaydreamVoiceAction"
            android:excludeFromRecents="true"
            android:exported="true"
            android:theme="@android:style/Theme.NoTitleBar.Fullscreen" >
            <intent-filter>

                <!-- This intent is launched by the SLEEP voice action from Pano Search -->
                <action android:name="com.google.android.pano.action.SLEEP" />

                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>
        <activity
            android:name=".device.privacy.PrivacyActivity"
            android:configChanges="keyboard|keyboardHidden|navigation"
            android:excludeFromRecents="true"
            android:exported="true"
            android:theme="@android:style/Theme.NoDisplay" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <action android:name="android.settings.PRIVACY_SETTINGS" />

                <category android:name="android.intent.category.DEFAULT" />
                <category android:name="android.intent.category.VOICE_LAUNCH" />
            </intent-filter>
        </activity>
        <activity
            android:name=".system.AccessibilityActivity"
            android:theme="@style/Theme.Settings.Transparent"
            android:configChanges="keyboard|keyboardHidden|navigation"
            android:excludeFromRecents="true"
            android:exported="true" />
        <activity
            android:name=".system.CaptionSetupActivity"
            android:configChanges="keyboard|keyboardHidden|navigation"
            android:excludeFromRecents="true"
            android:exported="true" >
            <intent-filter>
                <action android:name="android.settings.CAPTIONING_SETTINGS" />

                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>
        <activity
            android:name=".system.DateTimeActivity"
            android:theme="@style/Theme.Settings.Transparent"
            android:configChanges="keyboard|keyboardHidden|navigation"
            android:excludeFromRecents="true"
            android:exported="true" >
            <intent-filter>
                <action android:name="android.settings.DATE_SETTINGS" />

                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>
        <activity
            android:name=".system.SetDateTimeActivity"
            android:configChanges="keyboard|keyboardHidden|navigation"
            android:excludeFromRecents="true"
            android:exported="false" />
        <activity
            android:name=".system.LocationActivity"
            android:theme="@style/Theme.Settings.Transparent"
            android:configChanges="keyboard|keyboardHidden|navigation"
            android:excludeFromRecents="true"
            android:exported="true" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <action android:name="android.settings.LOCATION_SOURCE_SETTINGS" />
                <category android:name="android.intent.category.DEFAULT" />
                <category android:name="android.intent.category.VOICE_LAUNCH" />
                <category android:name="com.android.settings.SHORTCUT" />
            </intent-filter>
        </activity>
        <activity
            android:name=".system.development.DevelopmentActivity"
            android:theme="@style/Theme.Settings.Transparent"
            android:configChanges="keyboard|keyboardHidden|navigation"
            android:excludeFromRecents="true"
            android:exported="true" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <action android:name="android.settings.APPLICATION_DEVELOPMENT_SETTINGS" />
                <action android:name="com.android.settings.APPLICATION_DEVELOPMENT_SETTINGS" />

                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>
        <activity android:name=".system.development.AppPicker"
            android:configChanges="keyboard|keyboardHidden|navigation"
            android:excludeFromRecents="true"
            android:exported="false" />
        <activity
            android:name=".system.KeyboardActivity"
            android:theme="@style/Theme.Settings.Transparent"
            android:configChanges="keyboard|keyboardHidden|navigation"
            android:excludeFromRecents="true"
            android:exported="true" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <action android:name="android.settings.INPUT_METHOD_SETTINGS" />

                <category android:name="android.intent.category.VOICE_LAUNCH" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>
        <activity
            android:name=".system.LanguageActivity"
            android:theme="@style/Theme.Settings.Transparent"
            android:configChanges="keyboard|keyboardHidden|navigation|locale"
            android:excludeFromRecents="true"
            android:exported="true" >
            <intent-filter>
                <action android:name="android.settings.LOCALE_SETTINGS" />

                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>
        <activity
            android:name=".system.InputsActivity"
            android:configChanges="keyboard|keyboardHidden|navigation"
            android:excludeFromRecents="true"
            android:exported="true" />
        <activity
            android:name=".accessories.BluetoothAccessoryActivity"
            android:theme="@style/Theme.Settings.Transparent"
            android:configChanges="keyboard|keyboardHidden|navigation"
            android:excludeFromRecents="true"
            android:exported="true" />
        <activity
            android:name=".accessories.AddAccessoryActivity"
            android:configChanges="keyboard|keyboardHidden|navigation"
            android:excludeFromRecents="true"
            android:exported="true"
            android:launchMode="singleTask"
            android:taskAffinity=""
            android:persistableMode="persistNever">
            <intent-filter>
                <action android:name="com.google.android.intent.action.CONNECT_INPUT" />

                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>

        <receiver android:name=".accessories.BluetoothConnectionsManager" >
            <intent-filter>
                <action android:name="android.bluetooth.device.action.ACL_CONNECTED" />
                <action android:name="android.bluetooth.device.action.ACL_DISCONNECTED" />
                <action android:name="android.bluetooth.adapter.action.STATE_CHANGED" />
            </intent-filter>
        </receiver>

        <receiver android:name=".accessories.BluetoothPairingRequest" >
            <intent-filter>
                <action android:name="android.bluetooth.device.action.PAIRING_REQUEST" />
            </intent-filter>
        </receiver>

        <activity
            android:name=".accessories.BluetoothPairingDialog"
            android:configChanges="keyboard|keyboardHidden|navigation"
            android:excludeFromRecents="true"
            android:exported="true" >
            <intent-filter>
                <action android:name="android.bluetooth.device.action.PAIRING_REQUEST" />

                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>
        <activity
            android:name=".accessories.BluetoothDevicePickerActivity"
            android:configChanges="keyboard|keyboardHidden|navigation"
            android:excludeFromRecents="true"
            android:exported="true" >
            <intent-filter>
                <action android:name="android.bluetooth.devicepicker.action.LAUNCH" />

                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>
        <activity
            android:name=".about.AboutActivity"
            android:theme="@style/Theme.Settings.Transparent"
            android:excludeFromRecents="true"
            android:exported="true" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <action android:name="android.settings.DEVICE_INFO_SETTINGS" />

                <category android:name="android.intent.category.DEFAULT" />
                <category android:name="android.intent.category.VOICE_LAUNCH" />
            </intent-filter>
        </activity>
        <!-- Runs in the phone process since it needs access to the Phone object -->
        <activity android:name=".about.StatusActivity"
            android:excludeFromRecents="true"
            android:theme="@style/Theme.Settings.Transparent"
            android:process="com.android.phone">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.DEFAULT" />
                <category android:name="android.intent.category.VOICE_LAUNCH" />
            </intent-filter>
        </activity>
        <activity
            android:name=".about.LicenseActivity"
            android:label="@string/about_legal_license"
            android:excludeFromRecents="true"
            android:exported="true" >
            <intent-filter>
                <action android:name="android.settings.LICENSE" />

                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>
        <activity
            android:name=".name.DeviceNameSettingsActivity"
            android:configChanges="keyboardHidden|navigation"
            android:excludeFromRecents="true" >
                <intent-filter>
                    <action android:name="android.settings.DEVICE_NAME" />
                    <category android:name="android.intent.category.DEFAULT" />
                </intent-filter>
        </activity>

        <service android:name=".users.UserSwitchListenerService"/>
        <receiver android:name=".users.UserSwitchListenerService$BootReceiver">
            <intent-filter>
                  <action android:name="android.intent.action.BOOT_COMPLETED"/>
            </intent-filter>
        </receiver>

        <receiver android:name=".device.storage.NewStorageActivity$DiskReceiver">
            <intent-filter>
                <action android:name="android.os.storage.action.DISK_SCANNED" />
                <action android:name="android.os.storage.action.VOLUME_STATE_CHANGED" />
                <action android:name="com.google.android.tungsten.setupwraith.TV_SETTINGS_POST_SETUP" />
            </intent-filter>
        </receiver>

        <service android:name=".device.storage.SettingsStorageService$Impl"
            android:exported="false" />

        <activity android:name=".device.storage.NewStorageActivity"
            android:excludeFromRecents="true"
            android:exported="false"
            android:taskAffinity="" />

        <activity android:name=".device.storage.UnmountActivity"
            android:excludeFromRecents="true"
            android:exported="false" />

        <activity android:name=".device.storage.FormatActivity"
            android:excludeFromRecents="true"
            android:exported="false" />

        <activity android:name=".device.storage.MigrateStorageActivity"
            android:excludeFromRecents="true"
            android:exported="false" />

        <activity android:name=".device.apps.MoveAppActivity"
            android:excludeFromRecents="true"
            android:exported="false" />

        <activity android:name=".accessories.BluetoothRequestPermissionActivity"
            android:label="@string/bluetooth_permission_request"
            android:excludeFromRecents="true"
            android:permission="android.permission.BLUETOOTH"
            android:theme="@android:style/Theme.NoDisplay">
            <intent-filter android:priority="1">
                <action android:name="android.bluetooth.adapter.action.REQUEST_DISCOVERABLE" />
                <action android:name="android.bluetooth.adapter.action.REQUEST_ENABLE" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>

        <!-- Triggered when user-selected home app isn't encryption aware -->
        <activity android:name=".system.FallbackHome"
                  android:excludeFromRecents="true"
                  android:theme="@style/FallbackHome">
            <intent-filter android:priority="-1000">
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.HOME" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>

        <!-- Dummy intent filters for CTS TODO: implement something useful -->
        <activity android:name=".EmptyStubActivity"
                  android:exported="true"
                  android:excludeFromRecents="true"
                  android:theme="@android:style/Theme.NoDisplay">
            <intent-filter>
                <action android:name="android.settings.WEBVIEW_SETTINGS" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
            <intent-filter android:priority="1">
                <action android:name="android.settings.IGNORE_BATTERY_OPTIMIZATION_SETTINGS" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
            <intent-filter android:priority="1">
                <action android:name="android.settings.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS" />
                <category android:name="android.intent.category.DEFAULT" />
                <data android:scheme="package" />
            </intent-filter>
            <intent-filter android:priority="1">
                <action android:name="android.settings.IGNORE_BACKGROUND_DATA_RESTRICTIONS_SETTINGS" />
                <category android:name="android.intent.category.DEFAULT" />
                <data android:scheme="package" />
            </intent-filter>
            <intent-filter android:priority="1">
                <action android:name="android.settings.MANAGE_DEFAULT_APPS_SETTINGS" />
                <action android:name="android.settings.HOME_SETTINGS" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>
    </application>

</manifest>