在模拟器上使用TouchID

时间:2017-01-19 12:18:46

标签: ios ionic2 emulation touch-id

我试图在我的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)
);

可以在模拟器上测试它吗? 模拟器可以听指纹动作吗?

4 个答案:

答案 0 :(得分:4)

是的可能!

打开模拟器,点击硬件 - >触摸ID已注册以激活Touch ID

Touch ID Enrolled

要测试您在硬件中使用的Touch ID,请执行以下操作:模拟手指触摸 - >匹配或不匹配

Simulate Finger Touch

答案 1 :(得分:1)

在新版本的xCode中:

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

答案 2 :(得分:1)

任何使用最新 Xcode(版本 12x)的人,都没有 Hardware 菜单,它已被“功能”取代。因此,要注册触摸 ID,

  1. 打开模拟器
  2. 转到Features -> Touch Id -> Enrolled

enter image description here

答案 3 :(得分: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)。它不是在等待用户操作(指纹)