summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--core/java/android/provider/Settings.java226
-rw-r--r--core/res/res/values/config.xml6
-rw-r--r--core/res/res/values/symbols.xml2
-rw-r--r--packages/SettingsProvider/res/values/defaults.xml2
-rw-r--r--packages/SettingsProvider/src/android/provider/settings/backup/GlobalSettings.java2
-rw-r--r--packages/SettingsProvider/src/android/provider/settings/validators/GlobalSettingsValidators.java29
-rw-r--r--packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java231
-rw-r--r--packages/SettingsProvider/test/src/android/provider/SettingsBackupTest.java14
8 files changed, 357 insertions, 155 deletions
diff --git a/core/java/android/provider/Settings.java b/core/java/android/provider/Settings.java
index c473d3f81823..97112e90079c 100644
--- a/core/java/android/provider/Settings.java
+++ b/core/java/android/provider/Settings.java
@@ -18125,12 +18125,6 @@ public final class Settings {
public static final String WEAR_OS_VERSION_STRING = "wear_os_version_string";
/**
- * Whether the physical button has been set.
- * @hide
- */
- public static final String BUTTON_SET = "button_set";
-
- /**
* Whether there is a side button.
* @hide
*/
@@ -18302,6 +18296,12 @@ public final class Settings {
public static final int COMPANION_OS_VERSION_UNDEFINED = -1;
/**
+ * The companion App name.
+ * @hide
+ */
+ public static final String COMPANION_APP_NAME = "wear_companion_app_name";
+
+ /**
* A boolean value to indicate if we want to support all languages in LE edition on
* wear. 1 for supporting, 0 for not supporting.
* @hide
@@ -18413,10 +18413,13 @@ public final class Settings {
public static final String BURN_IN_PROTECTION_ENABLED = "burn_in_protection";
/**
-
* Whether the device has combined location setting enabled.
+ *
+ * @deprecated Use LocationManager as the source of truth for all location states.
+ *
* @hide
*/
+ @Deprecated
public static final String COMBINED_LOCATION_ENABLED = "combined_location_enable";
/**
@@ -18482,67 +18485,36 @@ public final class Settings {
public static final String CLOCKWORK_LONG_PRESS_TO_ASSISTANT_ENABLED =
"clockwork_long_press_to_assistant_enabled";
- /*
+ /**
* Whether the device has Cooldown Mode enabled.
* @hide
*/
public static final String COOLDOWN_MODE_ON = "cooldown_mode_on";
- /*
+ /**
* Whether the device has Wet Mode/ Touch Lock Mode enabled.
* @hide
*/
public static final String WET_MODE_ON = "wet_mode_on";
- /*
+ /**
* Whether the RSB wake feature is enabled.
* @hide
*/
public static final String RSB_WAKE_ENABLED = "rsb_wake_enabled";
- /*
+ /**
* Whether the screen-unlock (keyguard) sound is enabled.
* @hide
*/
public static final String SCREEN_UNLOCK_SOUND_ENABLED = "screen_unlock_sound_enabled";
- /*
+ /**
* Whether charging sounds are enabled.
* @hide
*/
public static final String CHARGING_SOUNDS_ENABLED = "wear_charging_sounds_enabled";
- /** The status of the early updates process.
- * @hide
- */
- public static final String EARLY_UPDATES_STATUS = "early_updates_status";
-
- /**
- * Early updates not started
- * @hide
- */
- public static final int EARLY_UPDATES_STATUS_NOT_STARTED = 0;
- /**
- * Early updates started and in progress
- * @hide
- */
- public static final int EARLY_UPDATES_STATUS_STARTED = 1;
- /**
- * Early updates completed and was successful
- * @hide
- */
- public static final int EARLY_UPDATES_STATUS_SUCCESS = 2;
- /**
- * Early updates skipped
- * @hide
- */
- public static final int EARLY_UPDATES_STATUS_SKIPPED = 3;
- /**
- * Early updates aborted due to timeout
- * @hide
- */
- public static final int EARLY_UPDATES_STATUS_ABORTED = 4;
-
/**
* Whether dynamic color theming (e.g. Material You) is enabled for apps which support
* it.
@@ -18669,6 +18641,174 @@ public final class Settings {
* @hide
*/
public static final int UPGRADE_DATA_MIGRATION_DONE = 2;
+
+ /**
+ * Whether to disable AOD while plugged.
+ * (0 = false, 1 = true)
+ * @hide
+ */
+ public static final String DISABLE_AOD_WHILE_PLUGGED = "disable_aod_while_plugged";
+
+ /**
+ * Whether the user has consented for network location provider (NLP).
+ * This setting key will only be used once during OOBE to set NLP initial value through
+ * the companion app ToS. This setting key will be synced over from Companion and
+ * corresponding toggle in GMS will be enabled.
+ * @hide
+ */
+ public static final String NETWORK_LOCATION_OPT_IN = "network_location_opt_in";
+
+ /**
+ * The custom foreground color.
+ * @hide
+ */
+ public static final String CUSTOM_COLOR_FOREGROUND = "custom_foreground_color";
+
+ /**
+ * The custom background color.
+ * @hide
+ */
+ public static final String CUSTOM_COLOR_BACKGROUND = "custom_background_color";
+
+ /** The status of the phone switching process.
+ * @hide
+ */
+ public static final String PHONE_SWITCHING_STATUS = "phone_switching_status";
+
+ /**
+ * Phone switching not started
+ * @hide
+ */
+ public static final int PHONE_SWITCHING_STATUS_NOT_STARTED = 0;
+
+ /**
+ * Phone switching started
+ * @hide
+ */
+ public static final int PHONE_SWITCHING_STATUS_STARTED = 1;
+
+ /**
+ * Phone switching completed and was successful
+ * @hide
+ */
+ public static final int PHONE_SWITCHING_STATUS_SUCCESS = 2;
+
+ /**
+ * Phone switching was cancelled
+ * @hide
+ */
+ public static final int PHONE_SWITCHING_STATUS_CANCELLED = 3;
+
+ /**
+ * Phone switching failed
+ * @hide
+ */
+ public static final int PHONE_SWITCHING_STATUS_FAILED = 4;
+
+ /**
+ * Phone switching is in progress of advertising to new companion device.
+ * @hide
+ */
+ public static final int PHONE_SWITCHING_STATUS_IN_PROGRESS_ADVERTISING = 5;
+
+ /**
+ * Phone switching successfully bonded with new companion device.
+ * @hide
+ */
+ public static final int PHONE_SWITCHING_STATUS_IN_PROGRESS_BONDED = 6;
+
+ /**
+ * Phone switching successfully completed on phone side.
+ * @hide
+ */
+ public static final int PHONE_SWITCHING_STATUS_IN_PROGRESS_PHONE_COMPLETE = 7;
+
+ /**
+ * Connection config migration in progress.
+ * @hide
+ */
+ public static final int PHONE_SWITCHING_STATUS_IN_PROGRESS_MIGRATION = 8;
+
+ /**
+ * Connection config migration failed.
+ * @hide
+ */
+ public static final int PHONE_SWITCHING_STATUS_IN_PROGRESS_MIGRATION_FAILED = 9;
+
+ /**
+ * Connection config migration cancellation in progress.
+ * @hide
+ */
+ public static final int PHONE_SWITCHING_STATUS_IN_PROGRESS_MIGRATION_CANCELLED = 10;
+
+ /**
+ * Connection config migration success.
+ * @hide
+ */
+ public static final int PHONE_SWITCHING_STATUS_IN_PROGRESS_MIGRATION_SUCCESS = 11;
+
+
+ /**
+ * Whether the device has enabled the feature to reduce motion and animation
+ * (0 = false, 1 = true)
+ * @hide
+ */
+ public static final String REDUCE_MOTION = "reduce_motion";
+
+ /**
+ * Whether RTL swipe-to-dismiss is enabled by developer options.
+ * (0 = false, 1 = true)
+ * @hide
+ */
+ public static final String RTL_SWIPE_TO_DISMISS_ENABLED_DEV =
+ "rtl_swipe_to_dismiss_enabled_dev";
+
+ /**
+ * Tethered Configuration state.
+ * @hide
+ */
+ public static final String TETHER_CONFIG_STATE = "tethered_config_state";
+
+ /**
+ * Tethered configuration state is unknown.
+ * @hide
+ */
+ public static final int TETHERED_CONFIG_UNKNOWN = 0;
+
+ /**
+ * Device is set into standalone mode.
+ * @hide
+ */
+ public static final int TETHERED_CONFIG_STANDALONE = 1;
+
+ /**
+ * Device is set in tethered mode.
+ * @hide
+ */
+ public static final int TETHERED_CONFIG_TETHERED = 2;
+
+
+ /**
+ * Whether phone switching is supported.
+ *
+ * (0 = false, 1 = true)
+ * @hide
+ */
+ public static final String PHONE_SWITCHING_SUPPORTED = "phone_switching_supported";
+
+ /**
+ * Setting indicating the name of the Wear OS package that hosts the Media Controls UI.
+ *
+ * @hide
+ */
+ public static final String WEAR_MEDIA_CONTROLS_PACKAGE = "wear_media_controls_package";
+
+ /**
+ * Setting indicating the name of the Wear OS package responsible for bridging media.
+ *
+ * @hide
+ */
+ public static final String WEAR_MEDIA_SESSIONS_PACKAGE = "wear_media_sessions_package";
}
}
diff --git a/core/res/res/values/config.xml b/core/res/res/values/config.xml
index 3ff63519572f..e4d74b5373e0 100644
--- a/core/res/res/values/config.xml
+++ b/core/res/res/values/config.xml
@@ -6067,6 +6067,12 @@
<!-- Wear OS: the name of the main activity of the device's sysui. -->
<string name="config_wearSysUiMainActivity" translatable="false"/>
+ <!-- Wear OS: the name of the package containing the Media Controls Activity. -->
+ <string name="config_wearMediaControlsPackage" translatable="false"/>
+
+ <!-- Wear OS: the name of the package containing the Media Sessions APK. -->
+ <string name="config_wearMediaSessionsPackage" translatable="false"/>
+
<bool name="config_secondaryBuiltInDisplayIsRound">@bool/config_windowIsRound</bool>
<!-- The display round config for each display in a multi-display device. -->
diff --git a/core/res/res/values/symbols.xml b/core/res/res/values/symbols.xml
index 7b582da836aa..cb021336c7cb 100644
--- a/core/res/res/values/symbols.xml
+++ b/core/res/res/values/symbols.xml
@@ -4865,6 +4865,8 @@
<java-symbol type="string" name="config_wearSysUiPackage"/>
<java-symbol type="string" name="config_wearSysUiMainActivity"/>
+ <java-symbol type="string" name="config_wearMediaControlsPackage"/>
+ <java-symbol type="string" name="config_wearMediaSessionsPackage"/>
<java-symbol type="string" name="config_defaultQrCodeComponent"/>
<java-symbol type="dimen" name="secondary_rounded_corner_radius" />
diff --git a/packages/SettingsProvider/res/values/defaults.xml b/packages/SettingsProvider/res/values/defaults.xml
index 59cd7a051fad..a93cd62e6301 100644
--- a/packages/SettingsProvider/res/values/defaults.xml
+++ b/packages/SettingsProvider/res/values/defaults.xml
@@ -43,6 +43,8 @@
<bool name="def_install_non_market_apps">false</bool>
<!-- 0 == off, 3 == on -->
<integer name="def_location_mode">3</integer>
+ <!-- 0 == off, 1 == on-->
+ <integer name="def_paired_device_location_mode">1</integer>
<bool name="assisted_gps_enabled">true</bool>
<bool name="def_netstats_enabled">true</bool>
<bool name="def_usb_mass_storage_enabled">true</bool>
diff --git a/packages/SettingsProvider/src/android/provider/settings/backup/GlobalSettings.java b/packages/SettingsProvider/src/android/provider/settings/backup/GlobalSettings.java
index e50f52229a16..41ce58eb7b4e 100644
--- a/packages/SettingsProvider/src/android/provider/settings/backup/GlobalSettings.java
+++ b/packages/SettingsProvider/src/android/provider/settings/backup/GlobalSettings.java
@@ -103,5 +103,7 @@ public class GlobalSettings {
Settings.Global.Wearable.UPGRADE_DATA_MIGRATION_STATUS,
Settings.Global.HDR_CONVERSION_MODE,
Settings.Global.HDR_FORCE_CONVERSION_TYPE,
+ Settings.Global.Wearable.RTL_SWIPE_TO_DISMISS_ENABLED_DEV,
+ Settings.Global.Wearable.REDUCE_MOTION,
};
}
diff --git a/packages/SettingsProvider/src/android/provider/settings/validators/GlobalSettingsValidators.java b/packages/SettingsProvider/src/android/provider/settings/validators/GlobalSettingsValidators.java
index d5386c1d75ac..a1c01723ad55 100644
--- a/packages/SettingsProvider/src/android/provider/settings/validators/GlobalSettingsValidators.java
+++ b/packages/SettingsProvider/src/android/provider/settings/validators/GlobalSettingsValidators.java
@@ -285,7 +285,6 @@ public class GlobalSettingsValidators {
}));
VALIDATORS.put(Global.Wearable.MUTE_WHEN_OFF_BODY_ENABLED, BOOLEAN_VALIDATOR);
VALIDATORS.put(Global.Wearable.SIDE_BUTTON, BOOLEAN_VALIDATOR);
- VALIDATORS.put(Global.Wearable.BUTTON_SET, BOOLEAN_VALIDATOR);
VALIDATORS.put(Global.Wearable.ANDROID_WEAR_VERSION, ANY_INTEGER_VALIDATOR);
VALIDATORS.put(Global.Wearable.SYSTEM_CAPABILITIES, ANY_INTEGER_VALIDATOR);
VALIDATORS.put(Global.Wearable.SYSTEM_EDITION, ANY_INTEGER_VALIDATOR);
@@ -345,6 +344,7 @@ public class GlobalSettingsValidators {
String.valueOf(Global.Wearable.HFP_CLIENT_DISABLED)
}));
VALIDATORS.put(Global.Wearable.COMPANION_OS_VERSION, ANY_INTEGER_VALIDATOR);
+ VALIDATORS.put(Global.Wearable.COMPANION_APP_NAME, ANY_STRING_VALIDATOR);
VALIDATORS.put(Global.Wearable.ENABLE_ALL_LANGUAGES, BOOLEAN_VALIDATOR);
VALIDATORS.put(Global.Wearable.OEM_SETUP_VERSION, ANY_INTEGER_VALIDATOR);
VALIDATORS.put(
@@ -404,16 +404,6 @@ public class GlobalSettingsValidators {
VALIDATORS.put(Global.Wearable.CHARGING_SOUNDS_ENABLED, BOOLEAN_VALIDATOR);
VALIDATORS.put(Global.Wearable.BEDTIME_MODE, BOOLEAN_VALIDATOR);
VALIDATORS.put(Global.Wearable.BEDTIME_HARD_MODE, BOOLEAN_VALIDATOR);
- VALIDATORS.put(
- Global.Wearable.EARLY_UPDATES_STATUS,
- new DiscreteValueValidator(
- new String[] {
- String.valueOf(Global.Wearable.EARLY_UPDATES_STATUS_NOT_STARTED),
- String.valueOf(Global.Wearable.EARLY_UPDATES_STATUS_STARTED),
- String.valueOf(Global.Wearable.EARLY_UPDATES_STATUS_SUCCESS),
- String.valueOf(Global.Wearable.EARLY_UPDATES_STATUS_SKIPPED),
- String.valueOf(Global.Wearable.EARLY_UPDATES_STATUS_ABORTED),
- }));
VALIDATORS.put(Global.Wearable.DYNAMIC_COLOR_THEME_ENABLED, BOOLEAN_VALIDATOR);
VALIDATORS.put(Global.Wearable.SCREENSHOT_ENABLED, BOOLEAN_VALIDATOR);
VALIDATORS.put(Global.Wearable.UPGRADE_DATA_MIGRATION_STATUS,
@@ -423,5 +413,22 @@ public class GlobalSettingsValidators {
String.valueOf(Global.Wearable.UPGRADE_DATA_MIGRATION_PENDING),
String.valueOf(Global.Wearable.UPGRADE_DATA_MIGRATION_DONE)
}));
+ VALIDATORS.put(Global.Wearable.DISABLE_AOD_WHILE_PLUGGED, BOOLEAN_VALIDATOR);
+ VALIDATORS.put(Global.Wearable.NETWORK_LOCATION_OPT_IN, BOOLEAN_VALIDATOR);
+ VALIDATORS.put(Global.Wearable.PHONE_SWITCHING_STATUS,
+ new InclusiveIntegerRangeValidator(
+ Global.Wearable.PHONE_SWITCHING_STATUS_NOT_STARTED,
+ Global.Wearable.PHONE_SWITCHING_STATUS_IN_PROGRESS_MIGRATION_SUCCESS));
+ VALIDATORS.put(Global.Wearable.REDUCE_MOTION, BOOLEAN_VALIDATOR);
+ VALIDATORS.put(Global.Wearable.RTL_SWIPE_TO_DISMISS_ENABLED_DEV, BOOLEAN_VALIDATOR);
+ VALIDATORS.put(
+ Global.Wearable.TETHER_CONFIG_STATE,
+ new DiscreteValueValidator(
+ new String[] {
+ String.valueOf(Global.Wearable.TETHERED_CONFIG_UNKNOWN),
+ String.valueOf(Global.Wearable.TETHERED_CONFIG_STANDALONE),
+ String.valueOf(Global.Wearable.TETHERED_CONFIG_TETHERED)
+ }));
+ VALIDATORS.put(Global.Wearable.PHONE_SWITCHING_SUPPORTED, BOOLEAN_VALIDATOR);
}
}
diff --git a/packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java b/packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java
index b0a19270018a..284b06b86cb6 100644
--- a/packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java
+++ b/packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java
@@ -3748,7 +3748,7 @@ public class SettingsProvider extends ContentProvider {
}
private final class UpgradeController {
- private static final int SETTINGS_VERSION = 217;
+ private static final int SETTINGS_VERSION = 218;
private final int mUserId;
@@ -5334,74 +5334,73 @@ public class SettingsProvider extends ContentProvider {
if (currentVersion == 203) {
// Version 203: initialize entries migrated from wear settings provide.
- initGlobalSettingsDefaultValForWearLocked(
+ initGlobalSettingsDefaultValLocked(
Global.Wearable.HAS_PAY_TOKENS, false);
- initGlobalSettingsDefaultValForWearLocked(
+ initGlobalSettingsDefaultValLocked(
Global.Wearable.GMS_CHECKIN_TIMEOUT_MIN, 6);
- initGlobalSettingsDefaultValForWearLocked(
+ initGlobalSettingsDefaultValLocked(
Global.Wearable.HOTWORD_DETECTION_ENABLED,
getContext()
.getResources()
.getBoolean(R.bool.def_wearable_hotwordDetectionEnabled));
- initGlobalSettingsDefaultValForWearLocked(
+ initGlobalSettingsDefaultValLocked(
Global.Wearable.SMART_REPLIES_ENABLED, true);
Setting locationMode =
getSecureSettingsLocked(userId).getSettingLocked(Secure.LOCATION_MODE);
- initGlobalSettingsDefaultValForWearLocked(
+ initGlobalSettingsDefaultValLocked(
Global.Wearable.OBTAIN_PAIRED_DEVICE_LOCATION,
!locationMode.isNull()
&& !Integer.toString(Secure.LOCATION_MODE_OFF)
.equals(locationMode.getValue()));
- initGlobalSettingsDefaultValForWearLocked(
+ initGlobalSettingsDefaultValLocked(
Global.Wearable.PHONE_PLAY_STORE_AVAILABILITY,
Global.Wearable.PHONE_PLAY_STORE_AVAILABILITY_UNKNOWN);
- initGlobalSettingsDefaultValForWearLocked(
+ initGlobalSettingsDefaultValLocked(
Global.Wearable.BUG_REPORT,
"user".equals(Build.TYPE) // is user build?
? Global.Wearable.BUG_REPORT_DISABLED
: Global.Wearable.BUG_REPORT_ENABLED);
- initGlobalSettingsDefaultValForWearLocked(
+ initGlobalSettingsDefaultValLocked(
Global.Wearable.SMART_ILLUMINATE_ENABLED,
getContext()
.getResources()
.getBoolean(R.bool.def_wearable_smartIlluminateEnabled));
- initGlobalSettingsDefaultValForWearLocked(
+ initGlobalSettingsDefaultValLocked(
Global.Wearable.CLOCKWORK_AUTO_TIME,
Global.Wearable.SYNC_TIME_FROM_PHONE);
- initGlobalSettingsDefaultValForWearLocked(
+ initGlobalSettingsDefaultValLocked(
Global.Wearable.CLOCKWORK_AUTO_TIME_ZONE,
Global.Wearable.SYNC_TIME_ZONE_FROM_PHONE);
- initGlobalSettingsDefaultValForWearLocked(
+ initGlobalSettingsDefaultValLocked(
Global.Wearable.CLOCKWORK_24HR_TIME, false);
- initGlobalSettingsDefaultValForWearLocked(Global.Wearable.AUTO_WIFI, true);
- initGlobalSettingsDefaultValForWearLocked(
+ initGlobalSettingsDefaultValLocked(Global.Wearable.AUTO_WIFI, true);
+ initGlobalSettingsDefaultValLocked(
Global.Wearable.WIFI_POWER_SAVE,
getContext()
.getResources()
.getInteger(
R.integer
.def_wearable_offChargerWifiUsageLimitMinutes));
- initGlobalSettingsDefaultValForWearLocked(
+ initGlobalSettingsDefaultValLocked(
Global.Wearable.ALT_BYPASS_WIFI_REQUIREMENT_TIME_MILLIS, 0L);
- initGlobalSettingsDefaultValForWearLocked(
+ initGlobalSettingsDefaultValLocked(
Global.Wearable.SETUP_SKIPPED, Global.Wearable.SETUP_SKIPPED_UNKNOWN);
- initGlobalSettingsDefaultValForWearLocked(
+ initGlobalSettingsDefaultValLocked(
Global.Wearable.LAST_CALL_FORWARD_ACTION,
Global.Wearable.CALL_FORWARD_NO_LAST_ACTION);
- initGlobalSettingsDefaultValForWearLocked(
+ initGlobalSettingsDefaultValLocked(
Global.Wearable.MUTE_WHEN_OFF_BODY_ENABLED,
getContext()
.getResources()
.getBoolean(R.bool.def_wearable_muteWhenOffBodyEnabled));
- initGlobalSettingsDefaultValForWearLocked(
+ initGlobalSettingsDefaultValLocked(
Global.Wearable.WEAR_OS_VERSION_STRING, "");
- initGlobalSettingsDefaultValForWearLocked(Global.Wearable.BUTTON_SET, false);
- initGlobalSettingsDefaultValForWearLocked(
+ initGlobalSettingsDefaultValLocked(
Global.Wearable.SIDE_BUTTON,
getContext()
.getResources()
.getBoolean(R.bool.def_wearable_sideButtonPresent));
- initGlobalSettingsDefaultValForWearLocked(
+ initGlobalSettingsDefaultValLocked(
Global.Wearable.ANDROID_WEAR_VERSION,
Long.parseLong(
getContext()
@@ -5410,55 +5409,55 @@ public class SettingsProvider extends ContentProvider {
final int editionGlobal = 1;
final int editionLocal = 2;
boolean isLe = getContext().getPackageManager().hasSystemFeature("cn.google");
- initGlobalSettingsDefaultValForWearLocked(
+ initGlobalSettingsDefaultValLocked(
Global.Wearable.SYSTEM_EDITION, isLe ? editionLocal : editionGlobal);
- initGlobalSettingsDefaultValForWearLocked(
+ initGlobalSettingsDefaultValLocked(
Global.Wearable.SYSTEM_CAPABILITIES, getWearSystemCapabilities(isLe));
- initGlobalSettingsDefaultValForWearLocked(
+ initGlobalSettingsDefaultValLocked(
Global.Wearable.WEAR_PLATFORM_MR_NUMBER,
SystemProperties.getInt("ro.cw_build.platform_mr", 0));
- initGlobalSettingsDefaultValForWearLocked(
+ initGlobalSettingsDefaultValLocked(
Settings.Global.Wearable.MOBILE_SIGNAL_DETECTOR,
getContext()
.getResources()
.getBoolean(R.bool.def_wearable_mobileSignalDetectorAllowed));
- initGlobalSettingsDefaultValForWearLocked(
+ initGlobalSettingsDefaultValLocked(
Global.Wearable.AMBIENT_ENABLED,
getContext()
.getResources()
.getBoolean(R.bool.def_wearable_ambientEnabled));
- initGlobalSettingsDefaultValForWearLocked(
+ initGlobalSettingsDefaultValLocked(
Global.Wearable.AMBIENT_TILT_TO_WAKE,
getContext()
.getResources()
.getBoolean(R.bool.def_wearable_tiltToWakeEnabled));
- initGlobalSettingsDefaultValForWearLocked(
+ initGlobalSettingsDefaultValLocked(
Global.Wearable.AMBIENT_LOW_BIT_ENABLED_DEV, false);
- initGlobalSettingsDefaultValForWearLocked(
+ initGlobalSettingsDefaultValLocked(
Global.Wearable.AMBIENT_TOUCH_TO_WAKE,
getContext()
.getResources()
.getBoolean(R.bool.def_wearable_touchToWakeEnabled));
- initGlobalSettingsDefaultValForWearLocked(
+ initGlobalSettingsDefaultValLocked(
Global.Wearable.AMBIENT_TILT_TO_BRIGHT,
getContext()
.getResources()
.getBoolean(R.bool.def_wearable_tiltToBrightEnabled));
- initGlobalSettingsDefaultValForWearLocked(
+ initGlobalSettingsDefaultValLocked(
Global.Wearable.DECOMPOSABLE_WATCHFACE, false);
- initGlobalSettingsDefaultValForWearLocked(
+ initGlobalSettingsDefaultValLocked(
Settings.Global.Wearable.AMBIENT_FORCE_WHEN_DOCKED,
SystemProperties.getBoolean("ro.ambient.force_when_docked", false));
- initGlobalSettingsDefaultValForWearLocked(
+ initGlobalSettingsDefaultValLocked(
Settings.Global.Wearable.AMBIENT_LOW_BIT_ENABLED,
SystemProperties.getBoolean("ro.ambient.low_bit_enabled", false));
- initGlobalSettingsDefaultValForWearLocked(
+ initGlobalSettingsDefaultValLocked(
Settings.Global.Wearable.AMBIENT_PLUGGED_TIMEOUT_MIN,
SystemProperties.getInt("ro.ambient.plugged_timeout_min", -1));
- initGlobalSettingsDefaultValForWearLocked(
+ initGlobalSettingsDefaultValLocked(
Settings.Global.Wearable.PAIRED_DEVICE_OS_TYPE,
Settings.Global.Wearable.PAIRED_DEVICE_OS_TYPE_UNKNOWN);
- initGlobalSettingsDefaultValForWearLocked(
+ initGlobalSettingsDefaultValLocked(
Settings.Global.Wearable.USER_HFP_CLIENT_SETTING,
Settings.Global.Wearable.HFP_CLIENT_UNSET);
Setting disabledProfileSetting =
@@ -5468,7 +5467,7 @@ public class SettingsProvider extends ContentProvider {
disabledProfileSetting.isNull()
? 0
: Long.parseLong(disabledProfileSetting.getValue());
- initGlobalSettingsDefaultValForWearLocked(
+ initGlobalSettingsDefaultValLocked(
Settings.Global.Wearable.COMPANION_OS_VERSION,
Settings.Global.Wearable.COMPANION_OS_VERSION_UNDEFINED);
final boolean defaultBurnInProtectionEnabled =
@@ -5482,17 +5481,17 @@ public class SettingsProvider extends ContentProvider {
.config_enableBurnInProtection);
final boolean forceBurnInProtection =
SystemProperties.getBoolean("persist.debug.force_burn_in", false);
- initGlobalSettingsDefaultValForWearLocked(
+ initGlobalSettingsDefaultValLocked(
Settings.Global.Wearable.BURN_IN_PROTECTION_ENABLED,
defaultBurnInProtectionEnabled || forceBurnInProtection);
- initGlobalSettingsDefaultValForWearLocked(
+ initGlobalSettingsDefaultValLocked(
Settings.Global.Wearable.CLOCKWORK_SYSUI_PACKAGE,
getContext()
.getResources()
.getString(
com.android.internal.R.string.config_wearSysUiPackage));
- initGlobalSettingsDefaultValForWearLocked(
+ initGlobalSettingsDefaultValLocked(
Settings.Global.Wearable.CLOCKWORK_SYSUI_MAIN_ACTIVITY,
getContext()
.getResources()
@@ -5622,63 +5621,16 @@ public class SettingsProvider extends ContentProvider {
currentVersion = 210;
}
if (currentVersion == 210) {
- final SettingsState secureSettings = getSecureSettingsLocked(userId);
- final Setting currentSetting = secureSettings.getSettingLocked(
- Secure.STATUS_BAR_SHOW_VIBRATE_ICON);
- if (currentSetting.isNull()) {
- final int defaultValueVibrateIconEnabled = getContext().getResources()
- .getInteger(R.integer.def_statusBarVibrateIconEnabled);
- secureSettings.insertSettingOverrideableByRestoreLocked(
- Secure.STATUS_BAR_SHOW_VIBRATE_ICON,
- String.valueOf(defaultValueVibrateIconEnabled),
- null /* tag */, true /* makeDefault */,
- SettingsState.SYSTEM_PACKAGE_NAME);
- }
+ // Unused. Moved to version 217.
currentVersion = 211;
}
if (currentVersion == 211) {
- // Version 211: Set default value for
- // Secure#LOCK_SCREEN_SHOW_ONLY_UNSEEN_NOTIFICATIONS
- final SettingsState secureSettings = getSecureSettingsLocked(userId);
- final Setting lockScreenUnseenSetting = secureSettings
- .getSettingLocked(Secure.LOCK_SCREEN_SHOW_ONLY_UNSEEN_NOTIFICATIONS);
- if (lockScreenUnseenSetting.isNull()) {
- final boolean defSetting = getContext().getResources()
- .getBoolean(R.bool.def_lock_screen_show_only_unseen_notifications);
- secureSettings.insertSettingOverrideableByRestoreLocked(
- Secure.LOCK_SCREEN_SHOW_ONLY_UNSEEN_NOTIFICATIONS,
- defSetting ? "1" : "0",
- null /* tag */,
- true /* makeDefault */,
- SettingsState.SYSTEM_PACKAGE_NAME);
- }
-
+ // Unused. Moved to version 217.
currentVersion = 212;
}
if (currentVersion == 212) {
- final SettingsState globalSettings = getGlobalSettingsLocked();
- final SettingsState secureSettings = getSecureSettingsLocked(userId);
-
- final Setting bugReportInPowerMenu = globalSettings.getSettingLocked(
- Global.BUGREPORT_IN_POWER_MENU);
-
- if (!bugReportInPowerMenu.isNull()) {
- Slog.i(LOG_TAG, "Setting bugreport_in_power_menu to "
- + bugReportInPowerMenu.getValue() + " in Secure settings.");
- secureSettings.insertSettingLocked(
- Secure.BUGREPORT_IN_POWER_MENU,
- bugReportInPowerMenu.getValue(), null /* tag */,
- false /* makeDefault */, SettingsState.SYSTEM_PACKAGE_NAME);
-
- // set global bug_report_in_power_menu setting to null since it's deprecated
- Slog.i(LOG_TAG, "Setting bugreport_in_power_menu to null"
- + " in Global settings since it's deprecated.");
- globalSettings.insertSettingLocked(
- Global.BUGREPORT_IN_POWER_MENU, null /* value */, null /* tag */,
- true /* makeDefault */, SettingsState.SYSTEM_PACKAGE_NAME);
- }
-
+ // Unused. Moved to version 217.
currentVersion = 213;
}
@@ -5804,6 +5756,89 @@ public class SettingsProvider extends ContentProvider {
currentVersion = 217;
}
+ if (currentVersion == 217) {
+ // Version 217: merge and rebase wear settings init logic.
+
+ final SettingsState secureSettings = getSecureSettingsLocked(userId);
+ final SettingsState globalSettings = getGlobalSettingsLocked();
+
+ // Following init logic is moved from version 210 to this version in order to
+ // resolve version conflict with wear branch.
+ final Setting currentSetting = secureSettings.getSettingLocked(
+ Secure.STATUS_BAR_SHOW_VIBRATE_ICON);
+ if (currentSetting.isNull()) {
+ final int defaultValueVibrateIconEnabled = getContext().getResources()
+ .getInteger(R.integer.def_statusBarVibrateIconEnabled);
+ secureSettings.insertSettingOverrideableByRestoreLocked(
+ Secure.STATUS_BAR_SHOW_VIBRATE_ICON,
+ String.valueOf(defaultValueVibrateIconEnabled),
+ null /* tag */, true /* makeDefault */,
+ SettingsState.SYSTEM_PACKAGE_NAME);
+ }
+
+ // Set default value for Secure#LOCK_SCREEN_SHOW_ONLY_UNSEEN_NOTIFICATIONS
+ // Following init logic is moved from version 211 to this version in order to
+ // resolve version conflict with wear branch.
+ final Setting lockScreenUnseenSetting = secureSettings
+ .getSettingLocked(Secure.LOCK_SCREEN_SHOW_ONLY_UNSEEN_NOTIFICATIONS);
+ if (lockScreenUnseenSetting.isNull()) {
+ final boolean defSetting = getContext().getResources()
+ .getBoolean(R.bool.def_lock_screen_show_only_unseen_notifications);
+ secureSettings.insertSettingOverrideableByRestoreLocked(
+ Secure.LOCK_SCREEN_SHOW_ONLY_UNSEEN_NOTIFICATIONS,
+ defSetting ? "1" : "0",
+ null /* tag */,
+ true /* makeDefault */,
+ SettingsState.SYSTEM_PACKAGE_NAME);
+ }
+
+ // Following init logic is moved from version 212 to this version in order to
+ // resolve version conflict with wear branch.
+ final Setting bugReportInPowerMenu = globalSettings.getSettingLocked(
+ Global.BUGREPORT_IN_POWER_MENU);
+
+ if (!bugReportInPowerMenu.isNull()) {
+ Slog.i(LOG_TAG, "Setting bugreport_in_power_menu to "
+ + bugReportInPowerMenu.getValue() + " in Secure settings.");
+ secureSettings.insertSettingLocked(
+ Secure.BUGREPORT_IN_POWER_MENU,
+ bugReportInPowerMenu.getValue(), null /* tag */,
+ false /* makeDefault */, SettingsState.SYSTEM_PACKAGE_NAME);
+
+ // set global bug_report_in_power_menu setting to null since it's deprecated
+ Slog.i(LOG_TAG, "Setting bugreport_in_power_menu to null"
+ + " in Global settings since it's deprecated.");
+ globalSettings.insertSettingLocked(
+ Global.BUGREPORT_IN_POWER_MENU, null /* value */, null /* tag */,
+ true /* makeDefault */, SettingsState.SYSTEM_PACKAGE_NAME);
+ }
+
+ // Following init logic is rebased from wear OS branch.
+ // Initialize default value of tether configuration to unknown.
+ initGlobalSettingsDefaultValLocked(
+ Settings.Global.Wearable.TETHER_CONFIG_STATE,
+ Global.Wearable.TETHERED_CONFIG_UNKNOWN);
+ // Init paired device location setting from resources.
+ initGlobalSettingsDefaultValLocked(
+ Global.Wearable.OBTAIN_PAIRED_DEVICE_LOCATION,
+ getContext()
+ .getResources()
+ .getInteger(R.integer.def_paired_device_location_mode));
+ // Init media packages from resources.
+ final String mediaControlsPackage = getContext().getResources().getString(
+ com.android.internal.R.string.config_wearMediaControlsPackage);
+ final String mediaSessionsPackage = getContext().getResources().getString(
+ com.android.internal.R.string.config_wearMediaSessionsPackage);
+ initGlobalSettingsDefaultValLocked(
+ Global.Wearable.WEAR_MEDIA_CONTROLS_PACKAGE,
+ mediaControlsPackage);
+ initGlobalSettingsDefaultValLocked(
+ Global.Wearable.WEAR_MEDIA_SESSIONS_PACKAGE,
+ mediaSessionsPackage);
+
+ currentVersion = 218;
+ }
+
// vXXX: Add new settings above this point.
if (currentVersion != newVersion) {
@@ -5821,19 +5856,19 @@ public class SettingsProvider extends ContentProvider {
return currentVersion;
}
- private void initGlobalSettingsDefaultValForWearLocked(String key, boolean val) {
- initGlobalSettingsDefaultValForWearLocked(key, val ? "1" : "0");
+ private void initGlobalSettingsDefaultValLocked(String key, boolean val) {
+ initGlobalSettingsDefaultValLocked(key, val ? "1" : "0");
}
- private void initGlobalSettingsDefaultValForWearLocked(String key, int val) {
- initGlobalSettingsDefaultValForWearLocked(key, String.valueOf(val));
+ private void initGlobalSettingsDefaultValLocked(String key, int val) {
+ initGlobalSettingsDefaultValLocked(key, String.valueOf(val));
}
- private void initGlobalSettingsDefaultValForWearLocked(String key, long val) {
- initGlobalSettingsDefaultValForWearLocked(key, String.valueOf(val));
+ private void initGlobalSettingsDefaultValLocked(String key, long val) {
+ initGlobalSettingsDefaultValLocked(key, String.valueOf(val));
}
- private void initGlobalSettingsDefaultValForWearLocked(String key, String val) {
+ private void initGlobalSettingsDefaultValLocked(String key, String val) {
final SettingsState globalSettings = getGlobalSettingsLocked();
Setting currentSetting = globalSettings.getSettingLocked(key);
if (currentSetting.isNull()) {
diff --git a/packages/SettingsProvider/test/src/android/provider/SettingsBackupTest.java b/packages/SettingsProvider/test/src/android/provider/SettingsBackupTest.java
index 19f1a86ec90c..a202e1614b67 100644
--- a/packages/SettingsProvider/test/src/android/provider/SettingsBackupTest.java
+++ b/packages/SettingsProvider/test/src/android/provider/SettingsBackupTest.java
@@ -627,7 +627,6 @@ public class SettingsBackupTest {
Settings.Global.Wearable.STEM_3_DATA,
Settings.Global.Wearable.STEM_3_DEFAULT_DATA,
Settings.Global.Wearable.WEAR_OS_VERSION_STRING,
- Settings.Global.Wearable.BUTTON_SET,
Settings.Global.Wearable.SIDE_BUTTON,
Settings.Global.Wearable.ANDROID_WEAR_VERSION,
Settings.Global.Wearable.SYSTEM_CAPABILITIES,
@@ -643,6 +642,7 @@ public class SettingsBackupTest {
Settings.Global.Wearable.PAIRED_DEVICE_OS_TYPE,
Settings.Global.Wearable.COMPANION_BLE_ROLE,
Settings.Global.Wearable.COMPANION_NAME,
+ Settings.Global.Wearable.COMPANION_APP_NAME,
Settings.Global.Wearable.USER_HFP_CLIENT_SETTING,
Settings.Global.Wearable.COMPANION_OS_VERSION,
Settings.Global.Wearable.ENABLE_ALL_LANGUAGES,
@@ -662,13 +662,21 @@ public class SettingsBackupTest {
Settings.Global.Wearable.SCREEN_UNLOCK_SOUND_ENABLED,
Settings.Global.Wearable.BEDTIME_MODE,
Settings.Global.Wearable.BEDTIME_HARD_MODE,
- Settings.Global.Wearable.EARLY_UPDATES_STATUS,
Settings.Global.Wearable.RSB_WAKE_ENABLED,
Settings.Global.Wearable.LOCK_SCREEN_STATE,
Settings.Global.Wearable.ACCESSIBILITY_VIBRATION_WATCH_ENABLED,
Settings.Global.Wearable.ACCESSIBILITY_VIBRATION_WATCH_TYPE,
Settings.Global.Wearable.ACCESSIBILITY_VIBRATION_WATCH_SPEED,
- Settings.Global.Wearable.SCREENSHOT_ENABLED);
+ Settings.Global.Wearable.SCREENSHOT_ENABLED,
+ Settings.Global.Wearable.DISABLE_AOD_WHILE_PLUGGED,
+ Settings.Global.Wearable.NETWORK_LOCATION_OPT_IN,
+ Settings.Global.Wearable.CUSTOM_COLOR_FOREGROUND,
+ Settings.Global.Wearable.CUSTOM_COLOR_BACKGROUND,
+ Settings.Global.Wearable.PHONE_SWITCHING_STATUS,
+ Settings.Global.Wearable.TETHER_CONFIG_STATE,
+ Settings.Global.Wearable.PHONE_SWITCHING_SUPPORTED,
+ Settings.Global.Wearable.WEAR_MEDIA_CONTROLS_PACKAGE,
+ Settings.Global.Wearable.WEAR_MEDIA_SESSIONS_PACKAGE);
private static final Set<String> BACKUP_DENY_LIST_SECURE_SETTINGS =
newHashSet(