Skip to content
Commit 678d5087 authored by Martin Stjernholm's avatar Martin Stjernholm
Browse files

Allow OTA even when ART Service is enabled.

Make sure we don't get LegacyDexoptDisabledException during the OTA
preinstall, more specifically when
OtaDexoptService.generatePackageDexopts runs.

This code only collects command invocations for the otapreopt_chroot
binary in frameworks/native/cmds/installd, which through another
otapreopt binary uses the legacy installd dexopt code. IOW,
LegacyDexoptDisabledException does not guard that legacy code from
being executed in the prereboot OTA stage, but it only affects dexopt
artifacts for the other OTA slot.

Test: m dist
      system/update_engine/scripts/update_device.py out/dist/*-ota-eng.*.zip
      # Check logcat that update_engine completes
      adb shell setprop persist.pm.mock-upgrade true
      adb reboot
      # Check logcat that update_engine completes
  with dalvik.vm.useartservice=true
Test: m AppUsingOtherApp AppUsedByOtherApp
      adb install out/target/product/vsoc_x86_64/testcases/AppUsedByOtherApp/x86_64/AppUsedByOtherApp.apk
      adb shell pm snapshot-profile android.compilation.cts.appusedbyotherapp
      adb pull data/misc/profman/android.compilation.cts.appusedbyotherapp.prof
      mv android.compilation.cts.appusedbyotherapp.prof primary.prof
      zip - primary.prof > AppUsedByOtherApp.dm
      adb install-multiple out/target/product/vsoc_x86_64/testcases/AppUsedByOtherApp/x86_64/AppUsedByOtherApp.apk AppUsedByOtherApp.dm
      adb install out/target/product/vsoc_x86_64/testcases/AppUsingOtherApp/x86_64/AppUsingOtherApp.apk
      adb shell am instrument -w --user 0 android.compilation.cts.appusingotherapp
  with dalvik.vm.useartservice=true
Bug: 251903639
Change-Id: If7a91ba3d8038d1717c734c5afb092ab989bca49
parent 51095e26
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment