Skip to content
No description, website, or topics provided.
Branch: master
Clone or download
Latest commit b21e807 May 25, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
app Merge new-version May 24, 2019
doc Upload version 3.0.0 Mar 10, 2016
.gitignore Upload version 3.0.0 Mar 10, 2016
CONTRIB Initial code push from vendor/google/tools/TestDPC. Oct 15, 2015
LICENSE Initial code push from vendor/google/tools/TestDPC. Oct 15, 2015
PRIVACY Add privacy policy. May 17, 2017
build.gradle Release TestDPC 5.0.0 source code Mar 15, 2018
gradlew Initial code push from vendor/google/tools/TestDPC. Oct 15, 2015
gradlew.bat Initial code push from vendor/google/tools/TestDPC. Oct 15, 2015
nfcprovisioning.txt Retire user guide. Nov 17, 2016
settings.gradle Upload version-2 Oct 9, 2015

Test Device Policy Control (Test DPC) App

Test DPC is an app designed to help EMMs, ISVs, and OEMs to test their applications and platforms in a Android enterprise managed profile (i.e. work profile). It serves as both a sample Device Policy Controller and a testing application to flex the APIs available for Android enterprise. It supports devices running Android 5.0 Lollipop or later.

See the documentation to learn more about Android in the enterprise.

Getting Started

This sample uses the Gradle build system. To build this project, use the "gradlew assemble" command or use "Import Project" in Android Studio.


You can find various kinds of provisioning methods here. Let's take a few of them as an example.

QR code provisioing (Device Owner N+ only)

  1. Factory reset your device and tap the welcome screen in setup wizard 6 times.
  2. The setup wizard prompts the user to connect to the Internet so the setup wizard can download a QR code reader.
  3. Modify (if needed) and scan [this QR code] (
  4. Follow onscreen instructions

NFC provisioning (Device Owner)

The NFC Provisioning app is used for device owner provisioning.

  1. Push the nfcprovisioning.txt file to your device: adb push nfcprovisioning.txt /sdcard/
  2. Open the NFC Provisioning app and ensure that com.afwsamples.testdpc is auto-populated.
  3. Bump the devices and touch to beam.
  4. Follow onscreen instructions on the target device.

adb command (Device Owner)

adb shell dpm set-device-owner com.afwsamples.testdpc/.DeviceAdminReceiver

Work profile

The easiest way is to launch the Test DPC app in launcher and follow the onscreen instructions.



Policy Management

Manage App Restrictions

Work Profile Management

Network Data Usage Stats


If you've found an error in this sample, please file an issue:

Patches are encouraged, and may be submitted by forking this project and submitting a pull request through GitHub.


Licensed under the Apache 2.0 license. See the LICENSE file for details.

How to make contributions?

Please read and follow the steps in the CONTRIB file.

You can’t perform that action at this time.