Forum Discussion

manny's avatar
manny
Level 1.5: Cupcake
11 months ago
Solved

QR Code APK requirements?

Hello,

 

I am utilizing the QR provisioning method to install an APK that utilizes the DeviceAdminReceive subclass. I was able to get it working on Android 10 tablets, but now I am running into the "Can't set up device \n Contact your IT admin for help" issue for Android 13 tablets. I am using the same payload for both Android versions. My current payload looks something like this:

{
"android.app.extra.PROVISIONING_DEVICE_ADMIN_COMPONENT_NAME": "com.example/.DeviceAdminReceiver", "android.app.extra.PROVISIONING_DEVICE_ADMIN_PACKAGE_CHECKSUM": "<checksum>", "android.app.extra.PROVISIONING_DEVICE_ADMIN_PACKAGE_DOWNLOAD_LOCATION": "<s3-bucket-url>
", "android.app.extra.PROVISIONING_SKIP_ENCRYPTION": false,
"android.app.extra.PROVISIONING_WIFI_SSID": "<ssid>",
"android.app.extra.PROVISIONING_WIFI_PASSWORD": "<password>", "android.app.extra.PROVISIONING_WIFI_SECURITY_TYPE": "WPA"

}

I have looked through this forum and have attempted to add the additional fields below (thinking it may have been an additional requirement for newer Android versions that I may have missed) but still no luck: 

"android.app.extra.PROVISIONING_LEAVE_ALL_SYSTEM_APPS_ENABLED":false,
"android.app.extra.PROVISIONING_ADMIN_EXTRAS_BUNDLE": {}

I have confirmed that granting Device Owner is possible via ADB and the APK is compatible and working on the Android 13 tablet. Are there any other components I am able to modify to attempt to fix this issue? Is there something on the tablet that can cause this issue? Although the APK seems to be fine, could the minSDK (23), compileSDK (33), and targetSDK (28) be a potential cause?

  • Moombas's avatar
    Moombas
    11 months ago

    Nice to hear that i was able to point you into the right direction 😉

  • ReeceK's avatar
    ReeceK
    Former Community Manager
    11 months ago

    Hey manny!

     

    Thanks for letting me know about this. I'll check with our internal teams to learn more. 

     

    I'll get an answer for you shortly and keep you posted! ðŸ˜Š

     

    Cheers,

    Reece

  • Moombas's avatar
    Moombas
    Level 4.1: Jelly Bean
    11 months ago

    Hi manny,

    not entirely sure but try to add this:

    "android.app.extra.PROVISIONING_ADMIN_EXTRAS_BUNDLE":
    {"PROVISIONING_MODE":"XXXXXX"}

    Where XXXXXX can be FULLY_MANAGED_DEVICE or MANAGED_PROFILE depending on what kind of enrollment you do. But this was stated from our MDM to be needed, can be different for others.

    • ReeceK's avatar
      ReeceK
      Former Community Manager
      11 months ago

      Hey @manny,

       

      I hope you're doing well. ðŸ˜Š

       

      I received an update from my end regarding this question, but I wanted to double-check if Moombas ' suggestion worked?

       

      Thanks, Reece

       

    • manny's avatar
      manny
      Level 1.5: Cupcake
      11 months ago

      Hello Moombas,

      After receiving your response, I looked into the provisioning mode requirements and found the requirements for Android 12 and above on Admin Provision Source.

      In addition to the DeviceAdminReceiver subclass, I added two additional classes that handle the DevicePolicyManager#ACTION_GET_PROVISIONING_MODE and DevicePolicyManager#ACTION_ADMIN_POLICY_COMPLIANCE intent actions. After some testing, I am able to successfully provision tablets on Android 10, 13, and 14.

      Thank you for the help. 

      • Moombas's avatar
        Moombas
        Level 4.1: Jelly Bean
        11 months ago

        Nice to hear that i was able to point you into the right direction 😉