using System;
|
using Shared.IOS.TBL;
|
|
|
namespace Shared
|
{
|
public class TouchIDUtils
|
{
|
|
public enum TouchIDSupperType
|
{
|
TouchID,
|
FaceID,
|
None
|
}
|
|
public enum TouchIDState
|
{
|
NotSupport,
|
Success,
|
Fail,
|
InputPassword,
|
TouchIDLockout
|
}
|
|
|
public static TouchIDSupperType getTouchIDSupperType()
|
{
|
|
TouchIDSupperType type = TouchIDSupperType.None;
|
|
HDLTouchIDSupperType mHDLTouchIDSupperType = HDLTouchID.SharedInstance.HDL_canSupperBiometrics;
|
|
if (mHDLTouchIDSupperType == HDLTouchIDSupperType.TouchID)
|
{
|
type = TouchIDSupperType.TouchID;
|
}
|
else if (mHDLTouchIDSupperType == HDLTouchIDSupperType.FaceID)
|
{
|
type = TouchIDSupperType.FaceID;
|
}
|
else
|
{
|
type = TouchIDSupperType.None;
|
}
|
|
return type;
|
|
}
|
|
|
public EventHandler<TouchIDState> OnHDLTouchIDStateBackEvent;
|
|
|
//StateBlock mStateBlock;
|
|
/// <summary>
|
/// 弹窗指纹验证 descTitle:输入密码验证按钮标题 mLocalizedReason:Touch显示的描述
|
/// </summary>
|
/// <value>descTitle:输入密码验证按钮标题 mLocalizedReason:Touch显示的描述</value>
|
public void showTouchIDWithDescribe(string descTitle, string mLocalizedReason)
|
{
|
if(descTitle == null)
|
{
|
descTitle = "输入密码验证";
|
}
|
|
if (mLocalizedReason == null)
|
{
|
mLocalizedReason = "通过Home键验证已有指纹";
|
}
|
|
|
HDLTouchID.SharedInstance.HDL_showTouchIDWithDescribe(descTitle, mLocalizedReason, (mState, mError) => {
|
if (mState == HDLTouchIDState.NotSupport)
|
{
|
OnHDLTouchIDStateBackEvent?.Invoke(this, TouchIDState.NotSupport);
|
}
|
else if (mState == HDLTouchIDState.Success)
|
{
|
OnHDLTouchIDStateBackEvent?.Invoke(this, TouchIDState.Success);
|
}
|
else if (mState == HDLTouchIDState.InputPassword)
|
{
|
OnHDLTouchIDStateBackEvent?.Invoke(this, TouchIDState.InputPassword);
|
}
|
else if (mState == HDLTouchIDState.TouchIDLockout)
|
{
|
OnHDLTouchIDStateBackEvent?.Invoke(this, TouchIDState.TouchIDLockout);
|
}
|
});
|
|
}
|
|
|
|
|
// 单例
|
static TouchIDUtils ourInstance = new TouchIDUtils();
|
|
public static TouchIDUtils Instance
|
{
|
get
|
{
|
return ourInstance;
|
}
|
}
|
|
}
|
}
|