Forum Discussion

AleksaBajat's avatar
AleksaBajat
Level 1.6: Donut
3 months ago

Device Owner Provisioning

My company is building a startup that utilizes Android boxes, and we want to have a way to provision applications to all of the devices and control their configurations remotely. I had a brief look at "device owner provisioning," and it seems like the right thing.
 
Do we have to use an EMM, or can we use the management API by ourselves? 
Is there a way to get a technical support on call to discuss the best path for us?
 
Main requirements:
- The user does not have to log into the Play Store on the device to receive application updates.
- The only application that can be used on the device is the one we provision (Kiosk mode).
- Preferably, restrict device settings so only specific settings are visible to the user.

- Management of thousands of devices.
 
Constraints:
- Devices do not have NFC or a camera. 

12 Replies

    • Emilie_B's avatar
      Emilie_B
      Google Community Manager
      3 months ago

      Thank you ​for your assistance, Rakib​  😊

  • Emilie_B's avatar
    Emilie_B
    Google Community Manager
    3 months ago

    Hi AleksaBajat​ and welcome to the Android Enterprise Customer Community! 

     

    Would you be able to share some make models of the Android boxes you’re mentioning and would be deploying? 

     

    I’ve checked with our team and they said that the OS of Android TV boxes does not have the OS with GMS services and built-in features that allow wider management capabilities. So, a TV OS has some limitations. 

    If these devices should be compatible, you may be able to enrol them using web enrolment or DPC Identifier Enrolment (afw#setup) but, management policies are ultimately up to the devices and EMM (and whether they would be supported or not). 

     

    Here are examples of devices that are recommended and supported (Android Enterprise Recommended devices). 

     

    I hope this is helpful - do let us know how you get on and if we can help further! 

     

    Thanks and chat soon, 

    Emilie

  • BenCowell's avatar
    BenCowell
    Level 1.6: Donut
    3 months ago

    Welcome to the community AleksaBajat :). I've proposed a similar use-case previously to a customer (who was looking to make TV screens 'remotely manageable' via android and an EMM).

     

    If you want to have a quick call to run through the brief - I can help. Can you message me your contact details / linkedin details please?

    • AleksaBajat's avatar
      AleksaBajat
      Level 1.6: Donut
      3 months ago

      Hey Ben,

      For sure! Let's get in touch https://www.linkedin.com/in/aleksa-bajat-059011216/.

  • keni's avatar
    keni
    Level 1.6: Donut
    3 months ago

    You don’t have to use an EMM — you can use Google's free Android Management API (AMAPI) to build your own EMM solution. "https://developers.google.com/android/management"

     

    Since your Android boxes do not have NFC or built-in cameras, consider the following provisioning options:

     

    1) Zero-Touch Enrollment (ZTE)

    • Best option for large-scale, hands-off deployment
    • Requires Android 9+ and support from the device manufacturer
    • Devices must be registered (by serial number or IMEI) via an authorized reseller
    • Configuration is applied automatically on first boot or after factory reset
      Recommended if your hardware vendor supports it

    2) Manual ADB Provisioning

    • Suitable for development, testing, or small-batch provisioning
    • Requires connecting the device to a computer via USB
    • Set the Device Owner manually using ADB: "adb shell dpm set-device-owner com.example.yourmdm/.YourReceiver"
    • Does not require camera or NFC, but does require physical access

    3) QR Code Enrollment Using External Camera or Scanner

     

    • Use a wired USB camera or Bluetooth barcode/QR scanner attached to the Android box
    • This allows scanning a QR code to trigger provisioning, even without a built-in camera
      Requires Android 9+ and the device must be in a factory-reset state
    • Initiate QR enrollment by tapping 6 times on the welcome screen or through ADB: " shell am start -a android.app.action.PROVISION_MANAGED_DEVICE"
    • Useful when Zero-Touch is unavailable but QR enrollment is preferred

    Well-known enterprise hardware vendors often provide their own provisioning or staging tools to simplify device enrollment:

    • Zebra devices use StageNow, which supports barcode or NFC-based staging.
    • Honeywell offers the Honeywell Enterprise Provisioner for device setup and configuration.
    • Samsung devices support Knox Mobile Enrollment (KME) for bulk provisioning.
    • Datalogic provides Datalogic StageNow, which is based on Zebra’s tool.
    • Panasonic devices often integrate with Zero-Touch Enrollment or use custom scripts via USB or QR code.


  • jasonbayton's avatar
    jasonbayton
    Level 4.0: Ice Cream Sandwich
    3 months ago

    Howdy,

     

    Do your boxes have GMS - Google services? If so you can use any open market MDM solution to enrol and manage devices.

     

    If you don't have GMS, the Android Management API won't be supported, but you can either use an MDM on the market supporting AOSP (no Google services), or build yourself a DPC, device policy controller.

     

    Capabilities you're after are supported by many platforms, there's nothing complex there.

     

    Note the suggestion to just use the Android management API directly (if you have GMS) goes against permissible usage unless you also plan to sell your platform to the ecosystem. 

    • keni's avatar
      keni
      Level 1.6: Donut
      3 months ago

      Jason, you are correct on the AMAPI and it goes against the googles policy if you are not planning to sell to the ecosystem .

       

      If you're working without GMS, I looked into some open-source options that support AOSP:

      • Headwind MDM – It’s open-source, supports AOSP, and has features like kiosk mode and remote app management. Pretty straightforward to set up.
        GitHub: https://github.com/headwind-mdm/headwind-mdm
      • Flyve MDM – Another open-source option built on GLPI. It’s a bit more complex but has good features for device management. GitHub: https://github.com/flyve-mdm
    • AleksaBajat's avatar
      AleksaBajat
      Level 1.6: Donut
      3 months ago

      We have access to  Google Play Store, but it seems to be severely limited and doesn't look like we can enter the setup wizard after a factory reset which leans me into thinking that it is AOSP in the end.

      Is building our own DPC agnostic to having access to Android Enterprise and Android Management API?

      • jasonbayton's avatar
        jasonbayton
        Level 4.0: Ice Cream Sandwich
        3 months ago

        All Android devices have integrated management APIs, solutions like AMAPI offer a layer over this to manage devices via their own DPC, but nothing stops you building your own.

         

        The only note is access to the APIs needed to pull an app from the play store have been removed for custom DPCs, so in your use case you'd deliver your APK(s) directly, and then leverage the on-Device APIs to set kiosk and related policies yourself. 

         

        You'll be responsible for the device communication between your servers and the DPC, but otherwise you should be able to build something that achieves your goals without using a 3rd party.. though as I said AOSP MDMs exist with APK deployment if you don't want to roll your own.