人脸采集原生App最小化样例
背景
本文展示如何使用开源样例,快速集成Native SDK搭建一个具备人脸采集功能的最小化的移动App。
准备工作
- 完成ZOLOZ SaaS账号的创建。
- 登陆ZOLOZ Portal,完成了API鉴权的设置:
- 获取了Client ID,public key。
- 生成了商家密钥对,并且将商家公钥进行了注册。
- 确认账号所在环境(沙箱 或 生产)。
源码获取
获取服务端最小化样例:
copy
git clone https://github.com/zoloz-pte-ltd/zoloz-integration-examples.git
这个仓库包含了多个产品及功能的集成样例,本文关注的样例位于 /basic/facecapture-native 目录下。
获取客户端最小化样例:
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. 启动Server
环境要求:
- 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. 启动人脸活体采集流程
- “HOST”输入框填入"http://<ip>:<port>",其中
ip
和port
是在步骤2中获取到的值。 - “API”输入框填入 "/api/facecapture/initialize"。
- “LEVEL”输入框填入 FACECAPTURE002 (或者FACECAPTURE003,FACECAPTURE004)。
- 点击”START ZOLOZ“按钮启动流程。