【问题标题】:Android managed profile - Profile owners cannot set user restriction no_add_userAndroid 管理个人资料 - 个人资料所有者无法设置用户限制 no_add_user
【发布时间】:2015-09-18 18:16:18
【问题描述】:

作为个人资料所有者,我正在尝试禁用用户添加,我使用的代码是

 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

【问题讨论】:

    标签: android android-5.0-lollipop android-5.1.1-lollipop android-managed-profile


    【解决方案1】:

    我也遇到过同样的问题。问题似乎是,虽然我们可以通过成为配置文件/设备所有者来访问方法“addUserRestriction”,但我们不能在该权限下传递 UserManager 密钥。

    要使用它们,我们需要MANAGE_USERS 权限,其保护级别为signature|system。 因此,必须使用平台密钥对应用程序进行签名。

    更多信息请参考:xdaDevelopers Enabling MultiUser

    【讨论】:

      【解决方案2】:

      文档现在明确提到了这一点:

      此限制对次要用户和托管配置文件没有影响,因为只有主要用户才能添加其他用户。

      https://developer.android.com/reference/android/os/UserManager.html#DISALLOW_ADD_USER

      【讨论】:

        猜你喜欢
        • 2017-10-16
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-01-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多