风车
风车
  • 发布:2015-12-04 16:05
  • 更新:2015-12-09 10:47
  • 阅读:3300

可否提供一个 native 调用 ios指纹验证的demo

分类:Native.js

哎这两天 扣oc 的代码。转换native js 卡壳了。感觉走不动了。求帮助。 就是需要一个指纹验证的功能

2015-12-04 16:05 负责人:无 分享
已邀请:
DCloud_heavensoft

DCloud_heavensoft

你提供下目前的代码,我们改改看。

风车

风车 (作者)

先附上oc 代码

//
// ViewController.m
// 指纹识别
//
// Created by chen on 15/2/16.
// Copyright (c) 2015年 lanrw. All rights reserved.
//

import "ViewController.h"

import <LocalAuthentication/LocalAuthentication.h>

@interface ViewController ()

@end

@implementation ViewController

  • (void)viewDidLoad {
    [super viewDidLoad];
    // 实例化
    LAContext lac = [[LAContext alloc]init];
    // 判断设备是否支持指纹识别
    BOOL isSupport = [lac canEvaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics error:NULL];
    if(!isSupport)
    {
    NSLog(@"不支持!");
    return;
    }
    [lac evaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics localizedReason:@"请按手印" reply:^(BOOL success, NSError
    error) {
    if(success)
    {
    NSLog(@"成功后,处理接下来的逻辑");
    }
    }];
    }

@end

以下是我转换的部js 代码 肯定是有问题。只是提供一个思路。忘指正 谢谢
document.addEventListener( "plusready", function() {
if ( plus.os.name == "iOS" ) {
var LAContext = plus.ios.importClass("LAContext");
var NSError = plus.ios.importClass("NSError");
var nserror = new NSError();
var lac = new LAContext();
var isSupport = lac.canEvaluatePolicyerror(
"LAPolicyDeviceOwnerAuthenticationWithBiometrics" //此为oc中一枚举值
,nserror //这传的是NSError 对象。 但是 oc中是 nil 我就不知道转换成js 传什么了。传 null 会报错
);
if(!isSupport){
alert("不支持!");
return ;
}
lac.evaluatePolicylocalizedReasonreply(
"LAPolicyDeviceOwnerAuthenticationWithBiometrics"
,"请按手指"
,function(success,error){
if(success){
alert("成功后,处理接下来的逻辑");
}
}
)
} else {
bLogin = true;
setTimeout( function(){
mui.toast( "此平台不支持指纹验证功能!" );
}, 500 );
}
}, false);

DCloud_IOS_XTY

DCloud_IOS_XTY

枚举值直接传入数字值即可

  • 风车 (作者)

    枚举值那 我明白,主要是NSError 那一块卡起了

    2015-12-10 17:15

  • DCloud_IOS_XTY

    目前不支持双重指针

    2015-12-10 18:58

该问题目前已经被锁定, 无法添加新回复