How does Skie become the device owner on a device?

Skie for Enterprise · Updated

Short answer

During provisioning, Skie is installed on the freshly reset device and then set as device owner, either by the adb command on a laptop or by the Provision app. Android allows this only on a device with no accounts and no completed setup. From then on, Android itself enforces the rules Skie applies.

Android has a built-in management role called device owner. An app that holds it can control installs, accounts, networking, factory reset, safe mode and many other things. Skie holds that role on every managed device, which is why a user cannot remove it the way they would uninstall an ordinary app.

The route to the role is the provisioning step. On the laptop route, the pasted command downloads the published Skie release, installs it, and sets it as device owner using adb. On the Provision app route, the app does the equivalent and shows each stage in the stepper. Both routes pass the one-time enrolment token, so the dashboard knows who the device belongs to.

The conditions are Android's. The device must be reset, no Google account may exist, and no other app can already hold the role. If a condition is not met, the step fails with a reason and no partial management is left behind.

Once Skie is the owner, it applies the policy bundle, signs and verifies it, reads each protection back from Android and reports a compliance score. A user cannot remove the device owner from Settings. The supported way to release it is Remove Skie from the dashboard.

Practical tip: do not try to set a device owner yourself with other adb commands. Use the Provision page, which sends the right command for the right student. See Android device owner mode explained.

  • Set once, during provisioning
  • Android allows it only on a fresh device
  • Users cannot remove it from Settings
  • Remove Skie releases it cleanly