问题描述
我这样使用它:
devicePolicyManager
.resetPasswordWithToken(
componentName,nonNullOrEmptyPassword,nonNullOrEmptyByteArray,0
)
它会抛出NPE:
java.lang.NullPointerException: Attempt to get length of null array
at android.os.Parcel.createException(Parcel.java:2094)
at android.os.Parcel.readException(Parcel.java:2056)
at android.os.Parcel.readException(Parcel.java:2004)
at android.app.admin.IDevicePolicyManager$Stub$Proxy.resetPasswordWithToken(IDevicePolicyManager.java:15625)
at android.app.admin.DevicePolicyManager.resetPasswordWithToken(DevicePolicyManager.java:3959)
Android 10,Samsung A51,应用是设备所有者。怎么了?
解决方法
如果用户不是设备上的管理员,则Probaby内部实现会将令牌设置为null。检查isResetPasswordTokenActive()返回什么。