UniApp接入
金融級(jí)實(shí)人認(rèn)證服務(wù)提供UniApp插件,幫助您在您的業(yè)務(wù)應(yīng)用(App)中實(shí)現(xiàn)刷臉認(rèn)證功能。您可以通過您的應(yīng)用服務(wù)端認(rèn)證初始化接口,向阿里云服務(wù)器調(diào)用發(fā)起認(rèn)證請(qǐng)求接口并獲取刷臉認(rèn)證的唯一標(biāo)識(shí)CertifyId,然后使用CertifyId喚起刷臉認(rèn)證客戶端SDK。本文介紹如何通過UniApp插件接入刷臉認(rèn)證。
接入前必讀
近期發(fā)現(xiàn)有個(gè)人開發(fā)者封裝阿里云增強(qiáng)版實(shí)人認(rèn)證SDK后開發(fā)了第三方插件,并在某平臺(tái)上提供付費(fèi)下載服務(wù)。阿里云提醒您,如果您使用了此類非阿里云官方提供的插件或服務(wù),阿里云概不對(duì)由此造成的一切后果負(fù)責(zé),亦不承擔(dān)任何法律責(zé)任。建議您使用阿里云官方SDK服務(wù)。
配置依賴
您可以參考DCloud官網(wǎng)文檔接入U(xiǎn)niApp插件,也可以參考以下步驟接入U(xiǎn)niApp插件。
下載金融級(jí)實(shí)人認(rèn)證UniApp SDK,解壓到項(xiàng)目中的nativePlugins目錄下。
說明金融級(jí)實(shí)人認(rèn)證產(chǎn)品提供了多樣化的產(chǎn)品方案,包括金融級(jí)實(shí)人認(rèn)證方案、金融級(jí)多因子意愿認(rèn)證方案、金融級(jí)活體人臉驗(yàn)證方案等,您可以根據(jù)業(yè)務(wù)需求選擇對(duì)應(yīng)產(chǎn)品方案。如果您的App對(duì)包大小比較敏感,您可以根據(jù)自己的需求先對(duì)SDK部分模塊進(jìn)行裁剪,然后再進(jìn)行集成。具體裁剪說明請(qǐng)參考SDK包裁剪說明。
除了刪除對(duì)應(yīng)的模塊文件,iOS還需要額外刪除對(duì)應(yīng)的framework配置。該配置位于SDK目錄下的package.json文件中,具體位置為“_dp_nativeplugin > ios > frameworks”。
導(dǎo)入本地插件。
在manifest.json文件下,單擊App原生插件配置。
在App原生插件配置區(qū)域,單擊選擇本地插件。
在本地插件選擇對(duì)話框,選擇需要打包生效的插件。
配置基座包。
制作自定義調(diào)試基座。在manifest.json文件,選擇 。
設(shè)置自定義調(diào)試基座。在manifest.json文件,選擇 ,單擊運(yùn)行到Android App基座或運(yùn)行到iOS App基座,勾選使用自定義基座運(yùn)行。
說明后續(xù)如果調(diào)試功能正常,打包正式版本時(shí)需要選擇
。
調(diào)用金融級(jí)實(shí)人認(rèn)證服務(wù)。
獲取metaInfo數(shù)據(jù)。
您在調(diào)用金融級(jí)實(shí)人認(rèn)證服務(wù)端初始化接口InitFaceVerify時(shí)需要傳入該值,用于獲取后續(xù)認(rèn)證的certifyId。
開始認(rèn)證。調(diào)用verify認(rèn)證接口,傳入certifyId進(jìn)行認(rèn)證。
代碼示例
加載模塊并獲取MetaInfo數(shù)據(jù):
<script>
// 加載金融級(jí)實(shí)人認(rèn)證插件
const aliyunVerify = uni.requireNativePlugin('AP-FaceDetectModule');
export default {
onLoad() {
// 調(diào)用getMetaInfo獲取MetaInfo數(shù)據(jù)
var metaInfo = aliyunVerify.getMetaInfo();
let p = uni.getSystemInfoSync().platform;
if (p === "ios") {
metaInfo = JSON.stringify(metaInfo);
}
uni.showToast({
title: '返回的內(nèi)容' + metaInfo,
icon: 'none'
});
console.log(metaInfo);
}
}
</script>
開始認(rèn)證:
aliyunVerify.verify({
"certifyId": "<替換生成的certifyId>",
"extParams": { "<擴(kuò)展參數(shù)key>": "<擴(kuò)展參數(shù)value>" }
}, function (response) {
console.log(response)
});
完整的代碼示例,請(qǐng)點(diǎn)擊Demo下載。
錯(cuò)誤碼說明
錯(cuò)誤碼 | 是否計(jì)費(fèi) | 錯(cuò)誤碼文案 | 錯(cuò)誤碼描述 |
1000 | 是 | 刷臉成功 | 用戶完成了刷臉過程,認(rèn)證建議結(jié)果為通過。該結(jié)果僅供參考,可通過調(diào)用服務(wù)端DescribeFaceVerify接口獲取最終認(rèn)證結(jié)果。 |
1001 | 否 | 系統(tǒng)錯(cuò)誤 | 表示系統(tǒng)錯(cuò)誤。 |
1003 | 否 | 驗(yàn)證中斷 | 表示驗(yàn)證中斷。 |
2002 | 否 | 網(wǎng)絡(luò)錯(cuò)誤 | 表示網(wǎng)絡(luò)錯(cuò)誤。 |
2003 | 否 | 客戶端設(shè)備時(shí)間錯(cuò)誤 | 表示客戶端設(shè)備時(shí)間錯(cuò)誤。 |
2006 | 是 | 刷臉失敗 | 用戶完成了刷臉過程,認(rèn)證建議結(jié)果為未通過。該結(jié)果僅供參考,可通過調(diào)用服務(wù)端DescribeFaceVerify接口獲取最終認(rèn)證結(jié)果、未通過的詳細(xì)原因。 |
關(guān)于錯(cuò)誤碼的更多信息,請(qǐng)參見iOS客戶端錯(cuò)誤碼詳情或Android客戶端錯(cuò)誤碼詳情。