Add adb command for requesting update ownership (3/n)
Bug: 244413073 Test: build Change-Id: Id35dc55122e4dfbad0d48f36b6c07ef7d0fddd5b
This commit is contained in:
@@ -170,6 +170,7 @@
|
||||
<uses-permission android:name="android.permission.SET_ORIENTATION" />
|
||||
<uses-permission android:name="android.permission.INSTALL_PACKAGES" />
|
||||
<uses-permission android:name="android.permission.INSTALL_PACKAGE_UPDATES" />
|
||||
<uses-permission android:name="android.permission.ENFORCE_UPDATE_OWNERSHIP" />
|
||||
<uses-permission android:name="android.permission.INSTALL_DPC_PACKAGES" />
|
||||
<uses-permission android:name="com.android.permission.USE_INSTALLER_V2" />
|
||||
<uses-permission android:name="android.permission.INSTALL_TEST_ONLY_PACKAGE" />
|
||||
|
||||
@@ -3211,6 +3211,15 @@ class PackageManagerShellCommand extends ShellCommand {
|
||||
case "--install-reason":
|
||||
sessionParams.installReason = Integer.parseInt(getNextArg());
|
||||
break;
|
||||
case "--update-ownership":
|
||||
if (params.installerPackageName == null) {
|
||||
// Enabling update ownership enforcement needs an installer. Since the
|
||||
// default installer is null when using adb install, that effectively
|
||||
// disable this enforcement.
|
||||
params.installerPackageName = "com.android.shell";
|
||||
}
|
||||
sessionParams.installFlags |= PackageManager.INSTALL_REQUEST_UPDATE_OWNERSHIP;
|
||||
break;
|
||||
case "--force-uuid":
|
||||
sessionParams.installFlags |= PackageManager.INSTALL_FORCE_VOLUME_UUID;
|
||||
sessionParams.volumeUuid = getNextArg();
|
||||
@@ -4099,6 +4108,7 @@ class PackageManagerShellCommand extends ShellCommand {
|
||||
pw.println(" --install-reason: indicates why the app is being installed:");
|
||||
pw.println(" 0=unknown, 1=admin policy, 2=device restore,");
|
||||
pw.println(" 3=device setup, 4=user request");
|
||||
pw.println(" --update-ownership: request the update ownership enforcement");
|
||||
pw.println(" --force-uuid: force install on to disk volume with given UUID");
|
||||
pw.println(" --apex: install an .apex file, not an .apk");
|
||||
pw.println(" --staged-ready-timeout: By default, staged sessions wait "
|
||||
@@ -4122,7 +4132,7 @@ class PackageManagerShellCommand extends ShellCommand {
|
||||
pw.println(" [--referrer URI] [--abi ABI_NAME] [--force-sdk]");
|
||||
pw.println(" [--preload] [--instant] [--full] [--dont-kill]");
|
||||
pw.println(" [--force-uuid internal|UUID] [--pkg PACKAGE] [--apex] [-S BYTES]");
|
||||
pw.println(" [--multi-package] [--staged]");
|
||||
pw.println(" [--multi-package] [--staged] [--update-ownership]");
|
||||
pw.println(" Like \"install\", but starts an install session. Use \"install-write\"");
|
||||
pw.println(" to push data into the session, and \"install-commit\" to finish.");
|
||||
pw.println("");
|
||||
|
||||
Reference in New Issue
Block a user