commit | b66997fc4e2bd8bf1318864d9a85d273748f24ca | [log] [tgz] |
---|---|---|
author | Chris Antol <cantol@google.com> | Mon Mar 25 23:49:35 2024 +0000 |
committer | Chris Antol <cantol@google.com> | Tue Jun 18 17:33:24 2024 +0000 |
tree | bd5482412f66df7a38f97b57b5ce30ddf6610096 | |
parent | d0f5ccb499176ce6496a75ff64cf7db62316fe43 [diff] |
RESTRICT AUTOMERGE Restrict Settings Homepage prior to provisioning Bug: 327749022 Test: manual test 1. factory reset + launch Settings via ADB during Setup -> verify app closes 2. factory reset + bypass Setup + tap Settings icon in launcher -> verify app closes (cherry picked from https://googleplex-android-review.googlesource.com/q/commit:70a5a0fd353cc6203d2926627de93786155ae5bc) (cherry picked from https://googleplex-android-review.googlesource.com/q/commit:477d4a8d6ba390ed0f9b150ca271966cd967820a) Merged-In: I8cbe38109ebf88a0f68f3917e95468a81c6463c1 Change-Id: I8cbe38109ebf88a0f68f3917e95468a81c6463c1
diff --git a/src/com/android/settings/homepage/SettingsHomepageActivity.java b/src/com/android/settings/homepage/SettingsHomepageActivity.java index 1d7b5dc..f1c46df 100644 --- a/src/com/android/settings/homepage/SettingsHomepageActivity.java +++ b/src/com/android/settings/homepage/SettingsHomepageActivity.java
@@ -74,6 +74,17 @@ @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); + + // Ensure device is provisioned in order to access Settings home + // TODO(b/331254029): This should later be replaced in favor of an allowlist + boolean unprovisioned = android.provider.Settings.Global.getInt(getContentResolver(), + android.provider.Settings.Global.DEVICE_PROVISIONED, 0) == 0; + if (unprovisioned) { + Log.e(TAG, "Device is not provisioned, exiting Settings"); + finish(); + return; + } + setContentView(R.layout.settings_homepage_container); final View appBar = findViewById(R.id.app_bar_container);