From 01871ab4151c5736b202ab74664976b55f77802d Mon Sep 17 00:00:00 2001 From: Howard Chen Date: Thu, 19 Mar 2020 18:55:55 +0800 Subject: [PATCH] Hide the DSULoader when DSU is running Bug: 151792130 Test: open developer settings and check the DSULoader make -j32 RunSettingsRoboTests Change-Id: I8f82e0f7ddbfd2c50ac6e2a2d3f61f7715ba452c --- res/values/strings.xml | 2 ++ .../development/SelectDSUPreferenceController.java | 11 ++++++++++- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/res/values/strings.xml b/res/values/strings.xml index b7899073dec..a6d3ab7604c 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -11745,6 +11745,8 @@ Load a Dynamic System Update Image Loading... + + DSU is running Bug report handler diff --git a/src/com/android/settings/development/SelectDSUPreferenceController.java b/src/com/android/settings/development/SelectDSUPreferenceController.java index 72e84472a8f..6498ae752f0 100644 --- a/src/com/android/settings/development/SelectDSUPreferenceController.java +++ b/src/com/android/settings/development/SelectDSUPreferenceController.java @@ -18,6 +18,7 @@ package com.android.settings.development; import android.content.Context; import android.content.Intent; +import android.os.SystemProperties; import androidx.preference.Preference; @@ -37,9 +38,16 @@ class SelectDSUPreferenceController extends DeveloperOptionsPreferenceController return DSU_LOADER_KEY; } + private boolean isDSURunning() { + return SystemProperties.getBoolean("ro.gsid.image_running", false); + } + @Override public boolean handlePreferenceTreeClick(Preference preference) { if (DSU_LOADER_KEY.equals(preference.getKey())) { + if (isDSURunning()) { + return true; + } final Intent intent = new Intent(mContext, DSULoader.class); mContext.startActivity(intent); return true; @@ -49,6 +57,7 @@ class SelectDSUPreferenceController extends DeveloperOptionsPreferenceController @Override public void updateState(Preference preference) { - preference.setSummary(mContext.getResources().getString(R.string.dsu_loader_description)); + int key = isDSURunning() ? R.string.dsu_is_running : R.string.dsu_loader_description; + preference.setSummary(mContext.getResources().getString(key)); } }