UserConsentVerifier.CheckAvailabilityAsync 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
检查身份验证设备(如 Microsoft Passport PIN、Windows Hello或指纹读取器)是否可用。
public:
static IAsyncOperation<UserConsentVerifierAvailability> ^ CheckAvailabilityAsync();
/// [Windows.Foundation.Metadata.RemoteAsync]
static IAsyncOperation<UserConsentVerifierAvailability> CheckAvailabilityAsync();
[Windows.Foundation.Metadata.RemoteAsync]
public static IAsyncOperation<UserConsentVerifierAvailability> CheckAvailabilityAsync();
function checkAvailabilityAsync()
Public Shared Function CheckAvailabilityAsync () As IAsyncOperation(Of UserConsentVerifierAvailability)
返回
一个 UserConsentVerifierAvailability 值,用于描述可用性检查操作的结果。
- 属性
注解
以下示例演示了一种方法,该方法检查当前用户是否支持身份验证设备,并返回描述结果的消息。
public async Task<string> CheckDeviceAvailability()
{
string returnMessage;
// Check the availability of device authentication.
var ucvAvailability = await Windows.Security.Credentials.UI.UserConsentVerifier.CheckAvailabilityAsync();
switch (ucvAvailability)
{
case Windows.Security.Credentials.UI.UserConsentVerifierAvailability.Available:
returnMessage = "Authentication device is available.";
break;
case Windows.Security.Credentials.UI.UserConsentVerifierAvailability.DeviceBusy:
returnMessage = "Authentication device is busy.";
break;
case Windows.Security.Credentials.UI.UserConsentVerifierAvailability.DeviceNotPresent:
returnMessage = "No authentication device found.";
break;
case Windows.Security.Credentials.UI.UserConsentVerifierAvailability.DisabledByPolicy:
returnMessage = "Authentication device verification is disabled by policy.";
break;
case Windows.Security.Credentials.UI.UserConsentVerifierAvailability.NotConfiguredForUser:
returnMessage = "Please go to Account Settings to set up a PIN or other advanced authentication.";
break;
default:
returnMessage = "Authentication device is currently unavailable.";
break;
}
return returnMessage;
}
winrt::Windows::Foundation::IAsyncOperation<winrt::hstring> CheckDeviceAvailability()
{
winrt::hstring returnMessage;
// Check the availability of device authentication.
auto ucvAvailability = co_await Windows::Security::Credentials::UI::UserConsentVerifier::CheckAvailabilityAsync();
switch (ucvAvailability)
{
case winrt::Windows::Security::Credentials::UI::UserConsentVerifierAvailability::Available:
returnMessage = L"Authentication device is available.";
break;
case winrt::Windows::Security::Credentials::UI::UserConsentVerifierAvailability::DeviceBusy:
returnMessage = L"Authentication device is busy.";
break;
case winrt::Windows::Security::Credentials::UI::UserConsentVerifierAvailability::DeviceNotPresent:
returnMessage = L"No authentication device found.";
break;
case winrt::Windows::Security::Credentials::UI::UserConsentVerifierAvailability::DisabledByPolicy:
returnMessage = L"Authentication device verification is disabled by policy.";
break;
case winrt::Windows::Security::Credentials::UI::UserConsentVerifierAvailability::NotConfiguredForUser:
returnMessage = L"Please go to Account Settings to set up a PIN or other advanced authentication.";
break;
default:
returnMessage = L"Authentication device is currently unavailable.";
break;
}
co_return returnMessage;
}