Disable factory reset in DSU mode

Bug: 302317901
Bug: 316578327
Test: build
Merged-In: I485eb6ac7beec0893d91ca5fe8ad88ecd96a5cbe
Change-Id: I485eb6ac7beec0893d91ca5fe8ad88ecd96a5cbe
This commit is contained in:
t
2023-11-02 08:06:59 +00:00
committed by Howard Chen
parent e34bd50427
commit 15af7d7d55

View File

@@ -26,11 +26,13 @@ import android.accounts.AccountManager;
import android.accounts.AuthenticatorDescription; import android.accounts.AuthenticatorDescription;
import android.app.ActionBar; import android.app.ActionBar;
import android.app.Activity; import android.app.Activity;
import android.app.AlertDialog;
import android.app.admin.DevicePolicyManager; import android.app.admin.DevicePolicyManager;
import android.app.settings.SettingsEnums; import android.app.settings.SettingsEnums;
import android.content.ComponentName; import android.content.ComponentName;
import android.content.ContentResolver; import android.content.ContentResolver;
import android.content.Context; import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent; import android.content.Intent;
import android.content.pm.PackageManager; import android.content.pm.PackageManager;
import android.content.pm.ResolveInfo; import android.content.pm.ResolveInfo;
@@ -43,6 +45,7 @@ import android.os.Environment;
import android.os.SystemProperties; import android.os.SystemProperties;
import android.os.UserHandle; import android.os.UserHandle;
import android.os.UserManager; import android.os.UserManager;
import android.os.image.DynamicSystemManager;
import android.provider.Settings; import android.provider.Settings;
import android.telephony.euicc.EuiccManager; import android.telephony.euicc.EuiccManager;
import android.text.TextUtils; import android.text.TextUtils;
@@ -266,6 +269,19 @@ public class MainClear extends InstrumentedFragment implements OnGlobalLayoutLis
return; return;
} }
final DynamicSystemManager dsuManager = (DynamicSystemManager)
getActivity().getSystemService(Context.DYNAMIC_SYSTEM_SERVICE);
if (dsuManager.isInUse()) {
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
builder.setTitle(R.string.dsu_is_running);
builder.setPositiveButton(R.string.okay, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {}
});
AlertDialog dsuAlertdialog = builder.create();
dsuAlertdialog.show();
return;
}
if (runKeyguardConfirmation(KEYGUARD_REQUEST)) { if (runKeyguardConfirmation(KEYGUARD_REQUEST)) {
return; return;
} }