Merge "ActivityManagerService: add SdkSandbox-Client-Package header" into tm-qpr-dev am: 73ae1f3fe7
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/19693812 Change-Id: Ibf50e462fc7352ba2ba190c8809b97b3f39a7cce Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
@@ -8745,12 +8745,40 @@ public class ActivityManagerService extends IActivityManager.Stub
|
||||
if (process.info.isInstantApp()) {
|
||||
sb.append("Instant-App: true\n");
|
||||
}
|
||||
|
||||
if (isSdkSandboxUid(process.uid)) {
|
||||
final int appUid = Process.getAppUidForSdkSandboxUid(process.uid);
|
||||
try {
|
||||
String[] clientPackages = pm.getPackagesForUid(appUid);
|
||||
// In shared UID case, don't add the package information
|
||||
if (clientPackages.length == 1) {
|
||||
appendSdkSandboxClientPackageHeader(sb, clientPackages[0], callingUserId);
|
||||
}
|
||||
} catch (RemoteException e) {
|
||||
Slog.e(TAG, "Error getting packages for client app uid: " + appUid, e);
|
||||
}
|
||||
sb.append("SdkSandbox: true\n");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void appendSdkSandboxClientPackageHeader(StringBuilder sb, String pkg, int userId) {
|
||||
final IPackageManager pm = AppGlobals.getPackageManager();
|
||||
sb.append("SdkSandbox-Client-Package: ").append(pkg);
|
||||
try {
|
||||
final PackageInfo pi = pm.getPackageInfo(pkg, 0, userId);
|
||||
if (pi != null) {
|
||||
sb.append(" v").append(pi.getLongVersionCode());
|
||||
if (pi.versionName != null) {
|
||||
sb.append(" (").append(pi.versionName).append(")");
|
||||
}
|
||||
}
|
||||
} catch (RemoteException e) {
|
||||
Slog.e(TAG, "Error getting package info for SDK sandbox client: " + pkg, e);
|
||||
}
|
||||
sb.append("\n");
|
||||
}
|
||||
|
||||
private static String processClass(ProcessRecord process) {
|
||||
if (process == null || process.getPid() == MY_PID) {
|
||||
return "system_server";
|
||||
|
||||
Reference in New Issue
Block a user