好吧,有 没有这样的 特权差异 Android系统 被关注到。
如果你看看 Android平台架构 ,你会发现即使是一个 正常 用户应用程序具有与所有系统资源相同的访问权限 系统 应用程序。
平台附带的应用程序在用户选择安装的应用程序中没有特殊状态。因此,第三方应用程序可以成为用户的默认Web浏览器,SMS Messenger,甚至是默认键盘(某些例外情况适用,例如系统的“设置”应用程序)。
你可以阅读更多 这里系统和用户应用程序的差异 。
另外,另一个 有趣 需要注意的是,在生产设备上只有3个进程可以运行 root , 受精卵 , app_process 和 adbd (虽然它不允许直接使用root访问权限 adb )。这意味着,所有其他应用程序都在自己的运行 user_id 具有不同的权限,并且由于Android不区分应用程序,因此具有相同权限的两个应用程序被允许具有相同的权限和对资源的访问权限,无论它是系统应用程序还是用户应用程序。
root
adb
user_id
现在,回答你的问题,如果是 系统 应用程序具有相同的权限 DPC 应用程序,然后是应用程序将能够执行给定任务(如将设备设置为单一使用模式)相同的 DPC 没有任何问题。
作为旁注,如果您打算创建一个 DPC 对于你的组织,使用 DPC支持库 比创建和发布系统应用程序更好。
附:要更改系统设置,您的应用需要 WRITE_SETTINGS 允许。