作为个人资料所有者,我正在尝试禁用用户添加,而我正在使用的代码是
devicePolicyManager.addUserRestriction(myComponent, UserManager.DISALLOW_ADD_USER)
当我打电话给我时,我得到一个安全例外,上面写着
Process: net.notify.notifymdm, PID: 32626
java.lang.SecurityException: Profile owners cannot set user restriction no_add_user
at android.os.Parcel.readException(Parcel.java:1546)
at android.os.Parcel.readException(Parcel.java:1499)
官方文档here表示来电者必须是政策或设备所有者。这是一个错误还是我在这里做错了什么?操作系统是5.1
答案 0 :(得分:0)
我遇到了同样的问题。问题似乎是虽然我们可以访问方法" addUserRestriction'作为个人资料/设备所有者,我们无法在该权限下传递UserManager密钥。
要使用它们,我们需要MANAGE_USERS
权限,其保护级别为signature|system
。
因此,必须使用平台密钥对应用程序进行签名。
有关详细信息,请参阅此处:xdaDevelopers Enabling MultiUser
答案 1 :(得分:0)
文档现在明确提到了这一点:
此限制对辅助用户和托管配置文件没有影响,因为只有主要用户才能添加其他用户。
https://developer.android.com/reference/android/os/UserManager.html#DISALLOW_ADD_USER