在模拟器上使用TouchID

15

我正在尝试在我的Ionic 2应用中使用TouchID。由于我有一部iPhone 5c,所以无法在真实设备上进行测试。

我已经导入了这个包:

import { TouchID } from 'ionic-native';

接下来,我测试了第一个函数(我已经在模拟器的硬件部分激活了TouchID):

TouchID.isAvailable()
.then(
  res => console.log('TouchID is available!'),
  err => console.error('TouchID is not available', err)
);

一切都运行良好。现在我想做的是测试这个函数:

TouchID.verifyFingerprint('Scan your fingerprint please')
.then(
  res => console.log('Ok', res),
  err => console.error('Error', err)
);

可以在模拟器上测试吗? 模拟器可以监听指纹操作吗?


1
仿真器是正确的术语 - 这个问题会更容易找到。 - brainray
4个回答

20

可以实现!

在模拟器中,您可以点击“硬件” -> “Touch ID Enrolled”,使Touch ID生效。

Touch ID Enrolled

要测试Touch ID,您可以在“硬件” ->“ 模拟手指触摸” -> 匹配或不匹配中进行测试。

模拟手指触摸


1
我有版本:10.0(SimulatorApp-726.7) 当您单击:硬件> Touch ID> 匹配触摸时,没有任何反应。 - Mourad Idrissi
触控ID的问题是否出现在模拟器屏幕上?如果是,你能否展示一下你所使用的代码来查看是否匹配? - José Neto
我无法在此处粘贴所有代码,我将其作为答案放置 :) - Mourad Idrissi
1
扩展答案。对于新设备,您将看到Face ID代替Touch ID。 - Rohit Singh

15

如果您正在使用最新的Xcode(版本12x),则没有“硬件”菜单,它已被“功能”所取代。因此,要注册Touch ID,请执行以下步骤:

  1. 打开模拟器
  2. 转到 功能 -> Touch Id -> 已注册

输入图像描述


3
奇怪...我的设备上只有在“功能”菜单中才有面容ID... - Chris
1
尝试使用触控 ID 手机,比如 iPhone 8。 - Sebastian Guerrero

1

在新版本的xCode中:

  1. 通过点击模拟器顶部菜单 -> 硬件 -> Touch ID -> 已注册启用 Touch ID
  2. 然后在模拟器顶部菜单中模拟Touch -> 硬件 -> Touch ID -> 匹配/不匹配Touch

0

这是我的代码@josé-neto

ngOnInit() {
      if(window["plugins"]){
        window["plugins"].touchid.isAvailable(
          function() {
              console.log("isAvailable ok !");
              window["plugins"].touchid.verifyFingerprint(
                'Scan your fingerprint please',
                function(msg) {console.log('verifyFingerprint ok: ' + JSON.stringify(msg))}, 
                function(msg) {console.log('verifyFingerprint not ok: ' + JSON.stringify(msg))} 
              );
          }, 
          function(msg) {
            console.log('isAvailable not ok: ' + JSON.stringify(msg))
          }
        );
      }
      else{
        console.log('window["plugins"] not ok');
      }
  }

在控制台中,它会显示 "isAvailable ok!" 然后执行 verifyFingerprint 函数。(它会显示:verifyFingerprint not ok: null)。它不会等待用户操作(指纹)。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接