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