CertificationModule.java
2.19 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
package com.feewee.aliface;
import android.util.Base64;
import com.alibaba.security.aligreenv2.AligreenSdkManager;
import com.alibaba.security.aligreenv2.BiometricsDetectListener;
import com.alibaba.security.aligreenv2.model.BiometricsConfig;
import com.alibaba.security.aligreenv2.model.BiometricsResult;
import com.facebook.react.bridge.Arguments;
import com.facebook.react.bridge.Callback;
import com.facebook.react.bridge.ReactApplicationContext;
import com.facebook.react.bridge.ReactContextBaseJavaModule;
import com.facebook.react.bridge.ReactMethod;
import com.facebook.react.bridge.WritableMap;
public class CertificationModule extends ReactContextBaseJavaModule {
public CertificationModule(ReactApplicationContext reactContext) {
super(reactContext);
}
@Override
public String getName() {
return "FwRnAliFace";
}
@ReactMethod
public void start(Callback callback){
//基于BiometricsConfig.Builder构造配置示例并进行参数设置
BiometricsConfig.Builder bioConfigBuilder = new BiometricsConfig.Builder();
// bioConfigBuilder.setActionCount(2); // 设置动作个数
bioConfigBuilder.setShowTutorial(true); // 是否显示导航(预备)页
bioConfigBuilder.setRecapThreshold(1.0f); // 翻拍检测阈值(阈值越大意味着越宽松)
// 调用活体识别接口
AligreenSdkManager.getInstance().startBiometricsDetect(super.getReactApplicationContext(), bioConfigBuilder.build(), new BiometricsDetectListener() {
@Override
public void onStart() {
// 开始人脸采集
}
@Override
public void onShow() {
// 活体识别页面显示
}
@Override
public void onDismiss() {
// 活体识别页面关闭
}
@Override
public void onFinish(BiometricsResult result) {
// 集成成功
if (result != null && result.getCode() == 0) {
// 人脸采集结束
WritableMap map = Arguments.createMap();
System.out.println();
map.putString("image", Base64.encodeToString(result.getBigImageData(), Base64.DEFAULT));
map.putInt("code", result.getCode());
callback.invoke(map);
}
}
});
}
}