Prevent Setup Wizard from starting provisioning if the device is already provisioned.

This change blocks calls from Setup Wizard to start device owner or financed device provisioning if the device has already completed its initial provisioning.

Bug: 482024712
Flag: EXEMPT BUGFIX
Cherrypick-From: https://googleplex-android-review.googlesource.com/q/commit:a27b6d73fcee6553e8977ac0f28feb6390d214c8
Cherrypick-From: https://googleplex-android-review.googlesource.com/q/commit:6f5cdbd65d62ceaf4c570cd82ff01d7aed88b8ee
Merged-In: Idaee713a281abdbe7560a297f4aaafe55094c070
Change-Id: Idaee713a281abdbe7560a297f4aaafe55094c070
3 files changed
tree: 21f92e52d0ec8e4a840ae352519d832253f0fc4d
  1. .idea/
  2. aconfig/
  3. proto/
  4. res/
  5. src/
  6. studio-dev/
  7. tests/
  8. tools/
  9. Android.bp
  10. AndroidManifest.xml
  11. OWNERS
  12. PREUPLOAD.cfg
  13. proguard.flags
  14. README.md
  15. TEST_MAPPING
README.md

Managed Provisioning

Bundled app responsible for provisioning an enterprise device

Flows

QR

{
  "android.app.extra.PROVISIONING_DEVICE_ADMIN_COMPONENT_NAME": "com.afwsamples.testdpc/com.afwsamples.testdpc.DeviceAdminReceiver",
  "android.app.extra.PROVISIONING_DEVICE_ADMIN_PACKAGE_DOWNLOAD_LOCATION": "https://testdpc-latest-apk.appspot.com/preview",
  "android.app.extra.PROVISIONING_DEVICE_ADMIN_SIGNATURE_CHECKSUM": "gJD2YwtOiWJHkSMkkIfLRlj-quNqG1fb6v100QmzM9w="
}

Code

AS Setup

aidegen -n -i=s -p=/opt/android-studio-with-blaze-canary \
    packages/apps/ManagedProvisioning \
    frameworks/base \
    cts \
    vendor/xts \
    packages/apps/Settings \
    vendor/unbundled_google/packages/SettingsGoogle \
    external/connectedappssdk \
    packages/services/Car/packages/CarManagedProvisioning \
    vendor/google/apps/SetupWizardOverlay/PixelSetupWizard

References