DevicePolicyManager.ResetPassword(String, ResetPasswordFlags) 方法

定义

强制为设备解锁(访问整个设备所需的密码)或当前用户的工作配置文件质询提供新密码。

[Android.Runtime.Register("resetPassword", "(Ljava/lang/String;I)Z", "GetResetPassword_Ljava_lang_String_IHandler")]
public virtual bool ResetPassword (string? password, Android.App.Admin.ResetPasswordFlags flags);
[<Android.Runtime.Register("resetPassword", "(Ljava/lang/String;I)Z", "GetResetPassword_Ljava_lang_String_IHandler")>]
abstract member ResetPassword : string * Android.App.Admin.ResetPasswordFlags -> bool
override this.ResetPassword : string * Android.App.Admin.ResetPasswordFlags -> bool

参数

password
String

用户的新密码。 Null 或空清除密码。

flags
ResetPasswordFlags

可以是 0 或组合 #RESET_PASSWORD_REQUIRE_ENTRY#RESET_PASSWORD_DO_NOT_ASK_CREDENTIALS_ON_BOOT

返回

如果应用了密码,则返回 true;如果当前约束不可接受,则返回 false。

属性

注解

强制为设备解锁(访问整个设备所需的密码)或当前用户的工作配置文件质询提供新密码。 这会立即生效。

在此之前 android.os.Build.VERSION_CODES#N,此 API 可供设备管理员、配置文件所有者和设备所有者使用。 从 android.os.Build.VERSION_CODES#N旧版设备管理员(不是配置文件所有者或设备所有者)开始,如果当前未设置密码,则只能调用此 API 来设置新密码。 只要目标用户解锁,配置文件所有者和设备所有者就可以继续强制更改现有密码,但如果设备上也存在托管配置文件,设备所有者将无法完全调用此 API。

android.os.Build.VERSION_CODES#Qandroid.os.Build.VERSION_CODES#P在尝试调用此 API 的 SDK 级别或更高级别的android.os.Build.VERSION_CODES#O配置文件所有者和设备所有者之间android.os.Build.VERSION_CODES#OSecurityException建议他们改为迁移到新 #resetPasswordWithToken API。 面向较旧 SDK 级别的配置文件所有者和设备所有者不会受到影响:它们将继续体验上一段中所述的现有行为。

<从>android.os.Build.VERSION_CODES#R开始,大多数情况下不再支持此 API。</em> 设备所有者和调用此 API 的配置文件所有者在目标 SDK 级别或更高级别时会收到 SecurityException ,或者如果目标为较低 SDK 级别 android.os.Build.VERSION_CODES#O ,则会收到无提示故障(API 返回 false)。 对于旧版设备管理员,如果 API 面向 SDK 级别或更高级别android.os.Build.VERSION_CODES#N,则引发SecurityException此 API,否则返回false。 只有持有RESET_PASSWORD权限的特权应用(属于系统工厂映像的一部分)仍可调用此 API 来设置新密码(如果当前未设置密码)。 在这种情况下,如果设备已有密码,则此 API 将引发 SecurityException

给定的密码必须足以满足所返回#getPasswordQuality(ComponentName)#getPasswordMinimumLength(ComponentName)的当前密码质量和长度约束;如果它不符合这些约束,则将被拒绝并返回 false。 请注意,密码质量可能更强(仅当请求的质量为数字时包含字母数字字符),在这种情况下,当前活动质量将增加以匹配。

在不支持 PackageManager#FEATURE_SECURE_LOCK_SCREEN 功能的设备上,此方法不执行任何操作。

呼叫设备管理员必须请求 DeviceAdminInfo#USES_POLICY_RESET_PASSWORD 能够调用此方法;如果没有,将引发安全异常。

此成员已弃用。 请改用 #resetPasswordWithToken

适用于 . 的 android.app.admin.DevicePolicyManager.resetPassword(java.lang.String, int)Java 文档

本页的某些部分是根据 Android 开放源代码项目创建和共享的工作进行的修改,并根据 Creative Commons 2.5 属性许可证中所述的术语使用。

适用于