Merge "2 minor DevicePolicyManagerService improvements." into sc-dev

This commit is contained in:
Felipe Leme
2021-03-01 16:49:24 +00:00
committed by Android (Google) Code Review
2 changed files with 69 additions and 1 deletions

View File

@@ -756,21 +756,25 @@ public class DevicePolicyManagerService extends BaseIDevicePolicyManager {
@Override
public void onUserStarting(@NonNull TargetUser user) {
if (user.isPreCreated()) return;
mService.handleStartUser(user.getUserIdentifier());
}
@Override
public void onUserUnlocking(@NonNull TargetUser user) {
if (user.isPreCreated()) return;
mService.handleUnlockUser(user.getUserIdentifier());
}
@Override
public void onUserStopping(@NonNull TargetUser user) {
if (user.isPreCreated()) return;
mService.handleStopUser(user.getUserIdentifier());
}
@Override
public void onUserUnlocked(@NonNull TargetUser user) {
if (user.isPreCreated()) return;
mService.handleOnUserUnlocked(user.getUserIdentifier());
}
}
@@ -9185,7 +9189,6 @@ public class DevicePolicyManagerService extends BaseIDevicePolicyManager {
pw.println();
mStatLogger.dump(pw);
pw.println();
pw.println("Encryption Status: " + getEncryptionStatusName(getEncryptionStatus()));
pw.println();
@@ -9201,7 +9204,9 @@ public class DevicePolicyManagerService extends BaseIDevicePolicyManager {
mPolicyCache.dump(pw);
pw.println();
mStateCache.dump(pw);
pw.println();
}
dumpResources(pw);
}
}
@@ -9216,6 +9221,32 @@ public class DevicePolicyManagerService extends BaseIDevicePolicyManager {
pw.decreaseIndent();
}
private void dumpResources(IndentingPrintWriter pw) {
mOverlayPackagesProvider.dump(pw);
pw.println();
pw.println("Other overlayable app resources");
pw.increaseIndent();
dumpResources(pw, mContext, "cross_profile_apps", R.array.cross_profile_apps);
dumpResources(pw, mContext, "vendor_cross_profile_apps", R.array.vendor_cross_profile_apps);
pw.decreaseIndent();
pw.println();
}
static void dumpResources(IndentingPrintWriter pw, Context context, String resName, int resId) {
String[] apps = context.getResources().getStringArray(resId);
if (apps == null || apps.length == 0) {
pw.printf("%s: empty\n", resName);
return;
}
pw.printf("%s: %d app%s\n", resName, apps.length, apps.length == 1 ? "" : "s");
pw.increaseIndent();
for (int i = 0; i < apps.length; i++) {
pw.printf("%d: %s\n", i, apps[i]);
}
pw.decreaseIndent();
}
@Override
public void onShellCommand(FileDescriptor in, FileDescriptor out, FileDescriptor err,
String[] args, ShellCallback callback, ResultReceiver resultReceiver) {

View File

@@ -21,6 +21,7 @@ import static android.app.admin.DevicePolicyManager.ACTION_PROVISION_MANAGED_PRO
import static android.app.admin.DevicePolicyManager.ACTION_PROVISION_MANAGED_USER;
import static com.android.internal.util.Preconditions.checkNotNull;
import static com.android.server.devicepolicy.DevicePolicyManagerService.dumpResources;
import android.annotation.NonNull;
import android.annotation.UserIdInt;
@@ -32,6 +33,7 @@ import android.content.pm.ApplicationInfo;
import android.content.pm.PackageManager;
import android.content.pm.ResolveInfo;
import android.util.ArraySet;
import android.util.IndentingPrintWriter;
import android.view.inputmethod.InputMethodInfo;
import com.android.internal.R;
@@ -224,4 +226,39 @@ public class OverlayPackagesProvider {
}
return new ArraySet<>(Arrays.asList(mContext.getResources().getStringArray(resId)));
}
void dump(IndentingPrintWriter pw) {
pw.println("OverlayPackagesProvider");
pw.increaseIndent();
dumpResources(pw, mContext, "required_apps_managed_device",
R.array.required_apps_managed_device);
dumpResources(pw, mContext, "required_apps_managed_user",
R.array.required_apps_managed_user);
dumpResources(pw, mContext, "required_apps_managed_profile",
R.array.required_apps_managed_profile);
dumpResources(pw, mContext, "disallowed_apps_managed_device",
R.array.disallowed_apps_managed_device);
dumpResources(pw, mContext, "disallowed_apps_managed_user",
R.array.disallowed_apps_managed_user);
dumpResources(pw, mContext, "disallowed_apps_managed_device",
R.array.disallowed_apps_managed_device);
dumpResources(pw, mContext, "vendor_required_apps_managed_device",
R.array.vendor_required_apps_managed_device);
dumpResources(pw, mContext, "vendor_required_apps_managed_user",
R.array.vendor_required_apps_managed_user);
dumpResources(pw, mContext, "vendor_required_apps_managed_profile",
R.array.vendor_required_apps_managed_profile);
dumpResources(pw, mContext, "vendor_disallowed_apps_managed_user",
R.array.vendor_disallowed_apps_managed_user);
dumpResources(pw, mContext, "vendor_disallowed_apps_managed_device",
R.array.vendor_disallowed_apps_managed_device);
dumpResources(pw, mContext, "vendor_disallowed_apps_managed_profile",
R.array.vendor_disallowed_apps_managed_profile);
pw.decreaseIndent();
}
}