ID Verification は、UniApp プラットフォーム用のプラグインを提供します。このプラグインを使用して、eKYC リモート本人確認機能を UniApp アプリケーションに追加できます。このトピックでは、UniApp の統合プロセスについて説明し、コード例を示します。
開始する前に
一部の開発者は、Alibaba Cloud ID Verification ソフトウェア開発キット (SDK) をカプセル化してサードパーティ製プラグインを作成しています。これらのプラグインはさまざまなプラットフォームで販売されています。Alibaba Cloud は、これらの非公式のプラグインやサービスの使用から生じるいかなる問題についても責任を負わず、法的責任も負いません。安定性とセキュリティを確保するため、公式の Alibaba Cloud SDK を使用してください。
依存関係の構成
UniApp プラグインを統合するには、「DCloud 公式ドキュメント」をご参照いただくか、次のステップに従ってください。
プロジェクトの `nativePlugins` ディレクトリに UniApp SDK をダウンロードして解凍します。

ローカルプラグインをインポートします。
manifest.json ファイルで、[App Native Plugin Configuration] をクリックします。
[App Native Plugin Configuration] セクションで、[Select Local Plugin] をクリックします。

[Select Local Plugin] ダイアログボックスで、パッケージ化するプラグインを選択します。
カスタムデバッグベースを作成します。
カスタムデバッグベースを作成するには、manifest.json ファイルで を選択します。

カスタムデバッグベースを設定するには、manifest.json ファイルで を選択します。
説明リリースバージョンをパッケージ化するには、 を選択します。

サービスの呼び出し
initWithOptionsメソッドを呼び出して SDK を初期化します。このメソッドは、options パラメーターを JSON オブジェクトとして受け取ります。options: 情報収集のためのオプションパラメーターを指定します。このパラメーターはオプションです。オプションパラメーターは次のとおりです。
説明ID Verification クライアントには、Device Guard セキュリティモジュールが組み込まれています。さまざまなリージョンのデータ収集コンプライアンス要件を満たすために、さまざまなデータレポートサイトを提供します。ユーザー属性に基づいてレポートサイトを指定するために、CustomUrl と CustomHost を設定できます。
注: 1 つのアプリケーションセッションライフサイクル内で指定できるレポートサイトは 1 つだけです。サーバークエリリージョンはレポートサイトと一致する必要があります。
レポートサイトの指定:
シンガポールサイト (デフォルト):
https://cloudauth-device.ap-southeast-1.aliyuncs.comインドネシアサイト:
https://cloudauth-device.ap-southeast-5.aliyuncs.com米国西部 (シリコンバレー):
https://cloudauth-device.us-west-1.aliyuncs.comドイツ (フランクフルト):
https://cloudauth-device.eu-central-1.aliyuncs.com中国 (香港):
https://cloudauth-device.cn-hongkong.aliyuncs.com
プロダクトサーバーでサポートされているリージョンの詳細については、「サポートされているリージョン」をご参照ください。
フィールド名
説明
例
IPv6
IPv6 ドメイン名を使用してデバイス情報をレポートするかどうかを指定します:
0 (デフォルト): いいえ (IPv4 ドメイン名を使用)
1: はい (IPv6 ドメイン名を使用)
"1"
DataSwitch
デバイス情報をレポートするタイミング。
0 (デフォルト): 初期化時
1: トークン取得時
説明デフォルトの構成を使用することをお勧めします。
"1"
CustomUrl
データレポートサーバーのドメイン名を設定します。
"https://cloudauth-device.ap-southeast-1.aliyuncs.com"
CustomHost
データレポートサーバーのホストを設定します。
"cloudauth-device.ap-southeast-1.aliyuncs.com
`getMetaInfo` 関数を呼び出して MetaInfo データを取得します。ID Verification サーバーを呼び出して検証リクエストを開始するときに、この値を渡します。
検証を開始するには、`startVerify` 関数を呼び出して transactionId を渡します。transactionId は、サーバー側の Initialize API を呼び出すことで取得できます。
startVerify()インターフェイスを呼び出して、検証リクエストを開始します。`startVerify()` インターフェイスには、次のパラメーターがあります:
transactionId: 必須パラメーターです。
extParams: オプションの拡張パラメーターです。
次の例は、パラメーターを渡す方法を示しています:
// Android の場合、 aliyunVerify.startVerify({ transactionId:"<verification_id>",// サーバーから取得した transactionId を入力します。 SdkLanguage:"cn"// 拡張パラメーターでフィールドを渡します。 }, function(t){ console.log(t) }); // レスポンスフォーマット { code:1000, // エラーコード message:"CODE_VERIFY_SUCCESS" // エラーコードの説明 }
setCustomUI()インターフェイスを呼び出して UI カラーをカスタマイズします。params: データを JSON 形式で渡します。UI カスタマイズ構成の詳細については、ネイティブ SDK のドキュメントをご参照ください:
完全なコード例
<template>
<view class="button-sp-area">
<button type="primary" plain="true" @click="init">init</button>
<button type="primary" plain="true" @click="getMetaInfo">getMetaInfo</button>
<button type="primary" plain="true" @click="verify">verify</button>
<button type="primary" plain="true" @click="setCustomUi">setCustomUi</button>
</view>
</template>
<script>
const aliyunVerify = uni.requireNativePlugin('VerifyIntlUniPlugin');
export default {
data() {
return {
title: ''
}
},
onLoad() {
},
methods: {
init:function() {
console.log("init");
const json={
CustomUrl:"https://cloudauth-device.ap-southeast-5.aliyuncs.com",
CustomHost:"cloudauth-device.ap-southeast-5.aliyuncs.com"
};
aliyunVerify.initWithOptions(json);
},
getMetaInfo:function() {
console.log("getMetaInfo");
var t = aliyunVerify.getMetaInfo();
console.log(t);
uni.showToast({
title: t,
icon: 'none'
});
},
setCustomUi:function(){
const json={
faceConfig:{faceBGColor:"#FF00FF"}
};
var t = aliyunVerify.setCustomUI(JSON.stringify(json));
console.log("setCustomUi"+t);
},
verify:function(){
console.log("Face Verify");
aliyunVerify.startVerify({
transactionId:"xxxxx",// 検証 ID
},
function(t){
console.log(t);
const msg = JSON.stringify(t);
console.log(msg);
// uni.showToast({
// title: t,
// icon: 'none'
// });
});
}
}
}
</script>
<style>
button {
margin-top: 30upx;
margin-bottom: 30upx;
}
.button-sp-area {
margin: 0 auto;
width: 60%;
}
.content {
text-align: center;
height: 400upx;
}
.wrapper {
flex-direction: column;
justify-content: center;
}
.button {
width: 200px;
margin-top: 30px;
margin-left: 20px;
padding-top: 20px;
padding-bottom: 20px;
border-width: 2px;
border-style: solid;
border-color: #458B00;
background-color: #458B00;
}
.text {
font-size: 30px;
color: #666666;
text-align: center;
}
</style>
また、UniApp デモをダウンロードして、完全な例を表示することもできます。
このデモコードは、統合リファレンスとしてのみ提供されています。アプリケーションには最新の SDK バージョンを使用するようにしてください。
エラーコード
エラーコード | 説明 |
1000 | 検証に成功しました。 この結果は参照用です。サーバー側の CheckResult API を呼び出して、最終的な検証結果を取得してください。 |
1001 | 検証に失敗しました。 失敗の詳細な理由を取得するには、サーバー側の CheckResult API を呼び出してください。 |
1002 | システムエラー。 |
1003 | SDK の初期化に失敗しました。クライアントの時刻が正しいか確認してください。 |
1004 | カメラ権限エラー。問題を解決するには、次のステップを試してください:
|
1005 | ネットワークエラー。 |
1006 | ユーザーが終了しました。 |
1007 | 無効な TransactionId。 |
1009 | クライアントのタイムスタンプエラー。 |
1011 | 不正な証明書タイプが送信されました。 |
1012 | 検出された証明書のキー情報が欠落しているか、フォーマットチェックに失敗しました。 |
1013 | 画質が低い。 |
1014 | エラー回数が上限を超えました。 |
1015 | Android システムのバージョンが低すぎます。 |
1016 | カメラ権限が付与されていません。 |