Introduce Global.LOCATION_GLOBAL_KILL_SWITCH
- When it's set to "1", LOCATION_PROVIDERS_ALLOWED will return "".
- When it's updated, the provider will send the changed notification
for LOCATION_PROVIDERS_ALLOWED for all running users.
Bug: 68769804
Test: Manual test with the settings command
Test: atest $ANDROID_BUILD_TOP/frameworks/base/core/tests/coretests/src/android/provider/SettingsBackupTest.java
Change-Id: Ie14ee696788b4152f7ae442da06b0bfa8034db52
diff --git a/core/java/android/provider/Settings.java b/core/java/android/provider/Settings.java
index 9945755..04f2b2f 100644
--- a/core/java/android/provider/Settings.java
+++ b/core/java/android/provider/Settings.java
@@ -10445,6 +10445,15 @@
"storage_settings_clobber_threshold";
/**
+ * If set to 1, {@link Secure#LOCATION_MODE} will be set to {@link Secure#LOCATION_MODE_OFF}
+ * temporarily for all users.
+ *
+ * @hide
+ */
+ public static final String LOCATION_GLOBAL_KILL_SWITCH =
+ "location_global_kill_switch";
+
+ /**
* Settings to backup. This is here so that it's in the same place as the settings
* keys and easy to update.
*
diff --git a/core/tests/coretests/src/android/provider/SettingsBackupTest.java b/core/tests/coretests/src/android/provider/SettingsBackupTest.java
index 492ef72..3f32bb4 100644
--- a/core/tests/coretests/src/android/provider/SettingsBackupTest.java
+++ b/core/tests/coretests/src/android/provider/SettingsBackupTest.java
@@ -230,6 +230,7 @@
Settings.Global.LOCATION_BACKGROUND_THROTTLE_INTERVAL_MS,
Settings.Global.LOCATION_BACKGROUND_THROTTLE_PROXIMITY_ALERT_INTERVAL_MS,
Settings.Global.LOCATION_BACKGROUND_THROTTLE_PACKAGE_WHITELIST,
+ Settings.Global.LOCATION_GLOBAL_KILL_SWITCH,
Settings.Global.LOCATION_SETTINGS_LINK_TO_PERMISSIONS_ENABLED,
Settings.Global.LOCK_SOUND,
Settings.Global.LOW_BATTERY_SOUND,