You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Ionic 6+Capacitor 3-4应用中集成Face ID?求开源方案

Ionic 6 + Capacitor 3-4 集成Face ID的开源解决方案

有几个靠谱的免费开源方案可以适配你的技术栈,完全不需要依赖收费的Ionic企业插件:

Capacitor Community Biometrics 插件

这是专门为Capacitor生态打造的开源生物识别插件,原生支持iOS的Face ID/Touch ID,以及Android的指纹、面部识别,完美兼容Capacitor 3-4和Ionic 6。

操作步骤:

  1. 安装插件:
    npm install @capacitor-community/biometrics
    npx cap sync
    
  2. iOS权限配置:在ios/App/App/Info.plist中添加Face ID使用说明(必须配置,否则App提交审核会被拒):
    <key>NSFaceIDUsageDescription</key>
    <string>需要使用Face ID验证身份,以访问您的敏感账户信息</string>
    
  3. 核心使用代码示例:
    import { Biometrics } from '@capacitor-community/biometrics';
    
    // 检查设备是否支持生物识别
    async function checkBiometricsSupport() {
      const result = await Biometrics.isAvailable();
      if (result.isAvailable) {
        console.log('支持的生物识别类型:', result.biometryType); // 返回 'Face ID'、'Touch ID' 或 'Fingerprint' 等
      } else {
        console.log('当前设备不支持生物识别功能');
      }
    }
    
    // 发起Face ID验证
    async function authenticateWithFaceID() {
      try {
        const verificationResult = await Biometrics.verify({
          reason: '请验证身份以继续操作',
        });
        if (verificationResult.verified) {
          // 验证成功,执行后续业务逻辑
          console.log('Face ID验证通过');
        }
      } catch (error) {
        // 验证失败或用户主动取消
        console.log('验证失败:', error);
      }
    }
    

Cordova Touch ID 插件(兼容Capacitor)

如果你不介意使用Cordova生态的插件,cordova-plugin-touch-id是个成熟稳定的开源选择,Capacitor可以无缝兼容它。虽然它不是原生Capacitor插件,但胜在迭代时间长、问题覆盖全面。

操作步骤:

  1. 安装插件:
    npm install cordova-plugin-touch-id
    npx cap sync
    
  2. 同样需要在iOS的Info.plist中添加NSFaceIDUsageDescription权限说明。
  3. 使用代码示例:
    import { Plugins } from '@capacitor/core';
    const { TouchID } = Plugins;
    
    async function triggerFaceIDAuth() {
      try {
        const isVerified = await TouchID.verify({
          reason: '请完成身份验证',
        });
        if (isVerified) {
          console.log('Face ID验证成功');
          // 执行后续操作
        }
      } catch (err) {
        console.log('验证失败或用户取消:', err);
      }
    }
    

注意事项:

  • Android端使用时,插件会自动在AndroidManifest.xml中添加USE_BIOMETRIC等必要权限,若遇到权限问题可手动检查配置。
  • 无论选择哪个插件,都必须提供清晰的权限使用说明,否则应用会被苹果App Store或Google Play拒绝。

内容的提问来源于stack exchange,提问作者Vladimir Lopez Salvador

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.18 19:30:48