Autonomous Single App Mode with Casper

By | January 6, 2016

While planning for an online assessment our district will begin giving in February, I decided to scan through their technical guide again. Within the wonderful pages of setup and requirements was this gem:

“You can use a third-party MDM to initiate Autonomous Single App Mode (ASAM) mode (Lock to App). This allows selected apps to enable single app mode upon launch, and disable single app mode when they terminate.

ASAM is the recommended solution to manage single app mode because it reduces the workload on proctors. Proctors will no longer need to push profiles to devices to enable/disable single app mode, but can grant MIST the ability to invoke Single App mode on-demand when it starts.”

Well that sounds nice. It also sounds like an automagical way I can kill two birds with one stone: Get more devices supervised using the device enrollment program and positively impact student achievement by making technology more accessible to our teachers and students. (Can you tell I recently completed an annual evaluation?)

I already had the app in question in the “Apps” section of my Mobile Devices tab in the JSS so I went straight to create a new configuration profile.


ASAM General Tab

The first step is to fill out the General info screen of the new configuration profile and scope/categorize it for what makes sense in your environment.

Next, we want to add an app that supports ASAM mode, in this case Mist Kiosk. Since the app is already in my Apps catalog, I can type the app’s name and click on the “More choices” button (it looks like a circle with three dots inside) and it will bring up a list of apps that match that search and fill in the appropriate Bundle ID for me.

ASAM Restrictions Blank

ASAM Restrictions Complete

If, for some reason, you want to add an application’s Bundle ID that isn’t in your app catalog (and so I could force myself to work with Python) I built a Python Script that will pull that information from Apple’s App Store API. You can find that script here: GitHub –

Once you have the app bundle IDs that you need configured, don’t forget to click on the “Scope” tab, and scope it to the correct device, or group of devices, then click save.

ASAM Scope

Now, once the profile is delivered to the device, it will allow the requested app to automatically enable/disable single app mode.

Notes & Caveats

There are a few things you want to be aware of when deploying Autonomous Single App Mode apps and relying on them for test day.

  1. iPads must be supervised. If you’re not currently using DEP or Apple Configurator to accomplish this, you won’t be able to take advantage of ASAM.
  2. The iPad App must support it. My example uses Measurement Inc’s MIST Kiosk app, which specifically mentions support.
    1. I’m also deploying the app as managed using our Volume Purchase program. Your mileage may vary if using an unmanaged app.
  3. ASAM Mode is a RESTRICTIONS PROFILE. This means take careful inventory of the profiles you are deploying to devices. Configuration Profiles don’t merge settings from the same category well at times, so you may need to edit an existing profile that you are already deploying to make this work as to not create conflicts or undesired behavior. Also, note any boxes that are (aren’t) checked as this may effect your users experience and you want to know exactly what settings you are sending out to your fleet.

Leave a Reply

Your email address will not be published. Required fields are marked *