活体检测 SDK 升级指南

V1.3.8 -> V1.3.9/V1.3.9.x(2022.8.10)

一、版本介绍

二、版本升级

  1. 在您 项目的 build.gradle中增加 maven 仓库配置:

    maven {
        url 'http://public-n3.advai.net/repository/maven-releases/'
        // 若您的 gradle 版本大于 7.0,需要增加如下配置允许通过 http 拉取 aar
        // allowInsecureProtocol = true
    }
  2. liveness 模块build.gradle增加库依赖:

    dependencies {
        ...
        // 版本更新记录请查看:http://public-n3.advai.net/repository/maven-releases/ai/advance/mobile-sdk/android/liveness-detection/maven-metadata.xml
        implementation 'ai.advance.mobile-sdk.android:liveness-detection:${the sdk version}'
    }
  3. 删除 liveness_lib_vx.x.x.aarguardian_core_vx.x.aar 两个 aar 文件。

  4. 同步 gradle 开始下载依赖。

如果无法拉取 aar,您可以通过下方链接下载 aar,然后手动依赖到项目中:

下方链接以 lib 1.3.9.4 和 core 3.3 为例,修改链接中的版本号可以下载对应的版本。

V1.3.7 -> V1.3.8(2022.7.12)

一、版本介绍

二、版本升级


V1.3.6 -> V1.3.7(2022.6.7)

一、版本介绍

二、版本升级


V1.3.5 -> V1.3.6(2022.5.27)

一、版本介绍

二、版本升级


V1.3.4 -> V1.3.5(2022.2.18)

一、版本介绍

二、版本升级


V1.3.2 -> V1.3.3/V1.3.4(2022.1.13)

一、版本介绍

二、版本升级


V1.3.1 -> V1.3.2

一、版本介绍

二、版本升级


V1.3.0 -> V1.3.1

一、版本介绍

二、版本升级


V1.2.9 -> V1.3.0

一、版本介绍

二、版本升级


V1.2.8 -> V1.2.9

一、版本介绍

二、版本升级


V1.2.7 -> V1.2.8

一、版本介绍

二、版本升级


V1.2.6 -> V1.2.7

一、版本介绍

二、版本升级


V1.2.5 -> V1.2.6

一、版本介绍

二、版本升级


V1.2.4 -> V1.2.5

一、版本介绍

二、版本升级


V1.2.3 -> V1.2.4

一、版本介绍

二、版本升级


V1.2.1/V1.2.2 -> V1.2.3

一、版本介绍

二、版本升级


V1.2.0 -> V1.2.1

一、版本介绍

二、版本升级


V1.1.9 -> V1.2.0

一、版本介绍

二、版本升级


V1.1.8 -> V1.1.9

一、版本介绍

二、版本升级


V1.1.7 -> V1.1.8

一、版本介绍

二、版本升级


V1.1.6 -> V1.1.7

一、版本介绍

二、版本升级


V1.1.5 -> V1.1.6

一、版本介绍

二、方法变更

三、版本升级


V1.1.4 -> V1.1.5

一、版本介绍

二、方法变更

三、版本升级

建议使用全量升级,新版代码更加简洁,几乎无代码侵入。


V1.1.3 -> V1.1.4

一、版本介绍

二、方法变更

原先的handleResult(ResultEntity entity)方法变更为 onDetectionSuccess()中的回调方法onGetFaceDataSuccess(),方法内容如下:

@Override
public void onDetectionSuccess() {
    mLivenessView.getLivenessData(new LivenessGetFaceDataCallback() {

    @Override
    public void onGetFaceDataStart() {
        ...
    }

    @Override
    public void onGetFaceDataSuccess(ResultEntity entity, String livenessId) {
        // TODO 请务必在此处配合您的服务端进行 anti-spoofing 的校验,此处回调中的 entity 对象中 livenessScore 的值需要从您的 server 获取,否则为 0
        toResultActivity(entity);
    }

    @Override
    public void onGetFaceDataFailed(ResultEntity entity) {
        ...
    }
   });
}

三、版本升级

  1. 全量升级

  2. 简单升级:本次更新主要是对 UI 模块做了优化,同时解决了 aar 中少量存在的 bug,您可以选择只替换 aar 文件来修复 aar 中的已知问题。


V1.1.2 -> V1.1.3

一、版本介绍

二、从 SDK 获取图片方式的更改

只有活体检测成功后才会有图片

// 获取 bitmap 格式的图片
Bitmap bitmap = LivenessBitmapCache.getLivenessBitmap();
// 获取 base64 格式的图片
String base64Str = LivenessBitmapCache.getLivenessBase64Str();
// 获取图片之后可以调用此方法释放资源
LivenessBitmapCache.clearCache();

三、版本升级


V1.0 -> V1.1.2

一、版本介绍

二、从 SDK 获取图片

private void handleResult(ResultEntity entity){ 
    if (entity!=null && entity.success) {
        String base64Bitmap = mDetector.getBase64Bitmap();//bitmap base64 type string
        byte[] decode = Base64.decode(base64Bitmap, Base64.NO_WRAP);
        Bitmap bitmap = BitmapFactory.decodeByteArray(decode, 0, decode.length);//convert base64 string to bitmap
    } 
}

三、版本升级

有以下两种方式升级 SDK 至 1.1.2 版本,您可以结合实际需求选择其一。
新版本 aar 中已包含了 armeabi 架构,如您在 1.0 集成过程中拷贝了 libaailiveness_v1.0.0.so 至 libs/armeabi 目录下,请删除此 .so

方式一 (强烈建议)

适用于对 liveness 模块代码 无自定义改动或改动较少 的情况。

  1. 保存您做的自定义更改
  2. 删除 liveness 模块,添加对新版的依赖
  3. 恢复您的自定义更改
方式二

适用于改动了 liveness 模块。无需删除旧版本 liveness 模块。

  1. 使用新的 liveness_lib_v1.1.2.aar 文件替换 libs 目录里的旧 aar 文件
  2. 拷贝 guardian_core_v1.0.aar 到 libs 目录,并添加对此 aar 的依赖 rebuild 工程即可。

tips: 如您未改动 res 目录,可使用新版 liveness 库工程中的 res 直接拷贝覆盖旧的