设备策略管理器无法在Android上设置重置密码令牌(“当前用户禁用托管令牌”引发异常)

设备策略管理器无法在Android上设置重置密码令牌(“当前用户禁用托管令牌”引发异常),android,device-admin,Android,Device Admin,尝试使用API设置重置密码令牌时引发以下异常: java.lang.SecurityException: Escrow token is disabled on the current user at android.os.Parcel.readException(Parcel.java:2005) ~[na:0.0] at android.os.Parcel.readException(Parcel.java:1951) ~[na:0.0] at android.app.admin.IDevi

尝试使用API设置重置密码令牌时引发以下异常:

java.lang.SecurityException: Escrow token is disabled on the current user
at android.os.Parcel.readException(Parcel.java:2005) ~[na:0.0]
at android.os.Parcel.readException(Parcel.java:1951) ~[na:0.0]
at android.app.admin.IDevicePolicyManager$Stub$Proxy.setResetPasswordToken(IDevicePolicyManager.java:8856) ~[na:0.0]
at android.app.admin.DevicePolicyManager.setResetPasswordToken(DevicePolicyManager.java:2814) ~[na:0.0]
“当前用户禁用代管令牌”消息的含义是什么?我不理解异常背后的原因,我似乎在任何地方都找不到答案。是否有人也遇到过这个错误,并且可能已经克服了它?提前谢谢


注意:到目前为止,这种情况只发生过一次。在所有其他情况下,setResetPasswordToken()都可以正常工作。

原因是,您的应用程序未设置为设备所有者。(使用
dpm设置设备所有者
命令。)

如中所述:

抛出:

如果管理员不是设备或配置文件所有者,则为SecurityException


奇怪的是,dpm set device owner命令是在调用setResetPasswordToken()方法之前以编程方式发出的。此方法在命令的成功退出值时调用。