Flutter Pin/密码/模式集成

Posted

技术标签:

【中文标题】Flutter Pin/密码/模式集成【英文标题】:Flutter Pin/Password/Pattern Integration 【发布时间】:2018-08-27 10:17:32 【问题描述】:

我已经浏览了 local_auth 包,它工作正常,但它没有使用密码或 pin 进行身份验证的选项。感谢您的帮助!

String _authorized = 'Not Authorized';//Start

Future<Null> _authenticate() async 
    final LocalAuthentication auth = new LocalAuthentication();
    bool authenticated = false;
    try 
        authenticated = await auth.authenticateWithBiometrics(
        localizedReason: 'Scan your fingerprint to authenticate',
        useErrorDialogs: true,
        stickyAuth: false);
        authenticated = await auth.authenticateWithBiometrics(localizedReason: 'Authenticate');
     on PlatformException catch (e) 
        print(e);
    
    if (!mounted) return;

    setState(() 
      _authorized = authenticated ? 'Authorized' : 'Not Authorized';
    );
//End

这是示例代码,您可以使用生物特征验证,但是指纹也存在的默认 Pin/密码验证呢?

【问题讨论】:

请输入一些代码。 我发现 this answer 用于原生 android 以强制用户重新进行身份验证。但是似乎没有人为此方法编写任何插件...如果这是您所寻求的,我建议在 Flutter 的 GitHub 存储库中添加一个功能请求。 【参考方案1】:

出于安全原因,移动设备(ios/Android)将仅通过生物识别验证用户,不是系统密码/pin。如果您想让用户通过生物识别以外的其他方法进行身份验证,则应用程序本身必须存储和处理(加密)凭据,该凭据与系统密码/pin完全分离。

您可以在许多银行/金融相关的应用程序中看到这种行为(使用系统生物识别和应用程序特定的凭据),例如https://play.google.com/store/apps/details?id=com.konylabs.capitalone&hl=en

【讨论】:

以上是关于Flutter Pin/密码/模式集成的主要内容,如果未能解决你的问题,请参考以下文章

flutte学习-编译模式

Flutter:shrinker 可能未能优化 Java 字节码

集成测试时如何解决 Flutter 中请求“dart.ui”的问题

Flutte VS RN

Flutter集成子module联调的解决方案

Flutter - GraphQL 支持