人脸采集原生App最小化样例

本文介绍使用开源样例,快速集成Native SDK搭建一个具备人脸采集功能的最小化的移动App。

前提条件

开始配置前请确保您已完成了以下操作:

    • 获取了Client ID和ZOLOZ transaction public key。
    • 生成了商户交易密钥对,并将商户交易公钥在ZOLOZ门户中进行了注册。

步骤一:获取源码

  • 获取服务端最小化样例:
    该仓库中包含了多个产品功能的集成样例,本文涉及的样例在/basic/facecapture-native目录下。
copy
git clone https://github.com/zoloz-pte-ltd/zoloz-integration-examples.git
  • 获取客户端最小化样例:
copy
# iOS最小化样例
git clone https://github.com/zoloz-pte-ltd/zoloz-demo-ios.git

# Android最小化样例
git clone https://github.com/zoloz-pte-ltd/zoloz-demo-android.git

步骤二:构建服务端与客户端

服务端构建

环境要求

  • JDK 1.8
  • Maven > 3.2.5
copy
cd basic/facecapture
mvn package

iOS App构建

环境要求:xcode

copy
pod install --repo-update

Android App构建

环境要求

  • Android SDK
  • adb
copy
./gradlew :app:installDebug

步骤三:启动人脸采集流程

1. 启动服务器

环境要求:JRE 1.8

在下方选择一种方法并运行相应的命令启动服务器。

  • 在本地机器上运行以下命令,指定公钥的文件路径。
copy
java \
  -Dhost.url="https://cn-sandbox-api.zoloz.tech"
  -Dclient.id=<client_id> \
  -Dmerchant.privkey.path=<merchant_private_key_path> \
  -Dzoloz.pubkey.path=<zoloz_public_key_path> \
  -jar target/zoloz-facecapture-native-bizserver-1.0-SNAPSHOT.jar
  • 在本地机器上运行以下命令,直接指定公钥的内容。
copy
java \
  -Dhost.url="https://cn-sandbox-api.zoloz.tech"
  -Dclient.id=<client_id> \
  -Dmerchant.privkey.path=<merchant_private_key_path> \
  -Dzoloz.pubkey=<zoloz_public_key_base64_content> \
  -jar target/zoloz-facecapture-native-bizserver-1.0-SNAPSHOT.jar

2. 确认服务端点

服务端点由IP和端口组成,端口通常为8080。服务端启动后会打印“Server started on $ip:$port”模式的日志,以下是服务端的日志样例,样例中的服务端点是192.168.1.5:8080。

copy
.   ____          _            __ _ _
 /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
 \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
  '  |____| .__|_| |_|_| |_\__, | / / / /
 =========|_|==============|___/=/_/_/_/
... (some log lines are ignored.)
2020-01-01 00:08:19.922 [] [main] INFO  org.apache.coyote.http11.Http11NioProtocol - Initializing ProtocolHandler ["http-nio-8080"]
2020-01-01 00:08:19.949 [] [main] INFO  org.apache.coyote.http11.Http11NioProtocol - Starting ProtocolHandler ["http-nio-8080"]
2020-01-01 00:08:19.970 [] [main] INFO  org.apache.tomcat.util.net.NioSelectorPool - Using a shared selector for servlet write/read
2020-01-01 00:08:20.085 [] [main] INFO  org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainer - Tomcat started on port(s): 8080 (http)
2020-01-01 00:08:20.099 [] [main] INFO  com.zoloz.example.facecapturenative.ServerInfoListener - Server started on 192.168.1.5:8080
2020-01-01 00:08:20.102 [] [main] INFO  com.zoloz.example.facecapturenative.Application - Started Application in 7.766 seconds (JVM running for 10.232)

3. 启动Demo App

忽略

4. 启动活体人脸采集流程

  1. 在“HOST”输入框填入"http://<ip>:<port>",其中IP和Port是在步骤2中获取到的值。
  2. 在“API”输入框填入"/api/facecapture/initialize"。
  3. 在“LEVEL”输入框填入FACECAPTURE002、FACECAPTURE003、FACECAPTURE004中的任意一个值。
  4. 单击START ZOLOZ,启动活体人脸采集流程。