我最近一直在审查 Android 的设备管理 API,以便找到一种方法来保护设备免于强制停止或卸载某些应用程序。我遇到了如下的wipeData():
http://developer.android.com/reference/android/app/admin/DevicePolicyManager.html#wipeData(int)
如果用户可以简单地从设备的“设置”菜单中擦除数据,这有什么意义呢?当我最初发布这个问题时,我没有意识到一种有效的用途可能是远程擦除设备。我明白了,但我特别关注的是保护某些功能,以便用户无法在已获得管理这些功能的策略的应用程序之外访问它们。
例如,在我的特定设备上,我可以选择System Settings->Backup & reset->Factory data reset
并清除所有内容。DevicePolicyManager 公开的许多其他选项也可以采用类似的情况。
使用设备管理 API 时,有没有办法禁用这些内置功能,以便只有为设备管理 API 注册的应用程序才能执行它们?