2 ユーザーガイド
2.1 サンプルプロジェクト
テスト用のサンプルプロジェクトは、AndroidStudioで提供されています。インポートするには、次の手順を参照してください。
File > New > Import Projectをクリックし、Sampleを選択してAndroidStudioにインポートしてください。
アカウント情報
API_KEY
とAPI_SECRET
を入力してください。
SDKを使用する前に、API_KEY
とAPI_SECRET
を構成する必要があります。 SilentLivenessActivity
のコードを参照してください:
ライセンスファイルの名前を変更し、指定したディレクトリに配置してください。(1.5節 ライセンス概要にご参照ください)
2.2 Android Studioへの統合
2.2.1 方法1:モジュール依存の簡易統合
File > New > Import Module ...
から../Sample/common-silent
を選択し、 Import common-silentをインポートモジュールとしてプロジェクトにインポートし、アプリケーションプロジェクトのbuild.gradleに依存関係を追加します。
common-silentのassetsディレクトリにあるモデルファイル(.model)とライセンスファイル(.lic)が正常に読み込まれたことをご確認ください。
プロジェクト(アプリプロジェクトと同じレベル)の下にリポジトリを作成し、liveness-silent-online-cn-release.aarをこのディレクトリにコピーしてください。ルートディレクトリのbuild.gradleを変更し、次のようにリポジトリに構成を追加してください。
次の例のように、AndroidManifest.xmlに権限ステートメントを追加してください。
次の例のように、AndroidManifest.xmlにActivityステートメントを追加してください。
静的生体検知は、
SilentLivenessActivity
を呼び出すことで使用できます。詳細については、サンプルのStartPageFragment
のstartDetectionActivity()
メソッドを参照してください。
2.2.2 方法2:libsメソッドを使用した高度な統合とcommon-silentの代わりにSDKを利用するカスタマイズ開発
該当するアプリモジュールの下に新しいlibs
フォルダーを作成し(libs
フォルダーが既に存在する場合は不要)、liveness-silent-online-cn-release.aar
をlibs
にコピーしてください。 アプリケーションモジュールの下にあるbuild.gradleに次の構成を追加してください。
そうすると、SDKを直接呼び出して開発することができます。
2.3 コードの難読化を解消
コードの難読化後にクラッシュが発生する可能性があるため、最初に難読化の構成によってコードの難読化の問題を解決することを推奨します。
具体的には、次のコードがproguardファイルに追加されることで、この問題を解決します。
2.4 インターフェース呼び出しプロセス
2.4.1 初期化
ライセンスファイルとモデルファイルは、事前に端末にコピーする必要があります。
FileUtil.copyAssetsToFile
を呼び出すか、他のメソッドを使用してサンプルを参照してください。その後、SilentLivenessApi
でinit
メソッドを呼び出してください。
生体検知にパスできる最小検出時間と最小検出フレーム数を設定する必要がある場合は、init
メソッドを調整してからsetPassCondition
メソッドを呼び出すことで設定できます。メソッドの説明については、2.4.2節 生体検知のオプション条件設定を参照してください。
詳細については、OnLivenessListenerのライブラリを参照してください。
品質検出の設定
2.4.2 生体検知のオプション条件設定
SilentLivenessApi
の中から、次のメソッドを呼び出して設定します。
生体検知パスの条件を設定します。
setPassCondition(final int minDuration, final int minFrames)
タイムアウト時間を秒単位で設定します。デフォルトのタイムアウト時間は10秒です。
setDetectTimeout(int timeout)
顔との距離の判定条件を設定します。 パラメータ値の範囲内にない場合また、
closeRate
は0ではない、かつfarRate
はcloseRate
より大きい場合は、STID_E_FARCLOSE_INVALID
のエラーが発生します:setFaceDistanceRate(float farRate, float closeRate)
眉毛の遮蔽検知機能が必要かどうかを設定します。デフォルトはfalseです。:
setBrowOcclusionEnable(final boolean enable)
顔の遮蔽検知機能が必要かどうかを設定します。デフォルトはfalseです。:
setOcclusionEnable(final boolean enable)
生体検知のしきい値を設定します。
setThreshold(final float threshold)
目の開き状態のしきい値を設定します。
setEyeOpenThreshold(final float threshold)
ぼやけさ検知機能が必要かどうかとそのしきい値を設定します。
setBlurryFilterEnable(final boolean enable, final float threshold)
照明条件検知機能が必要かどうかとそのしきい値を設定します。
setIlluminationFilterEnable(final boolean enable, final float lowLightThreshold, final float brightThreshold)
2.4.3 テスト開始の準備
SilentLivenessApi start()
メソッドを呼び出して、テストを開始する準備をします。
メソッドの説明:テストを開始する準備をします。
2.4.4 データを入力して検出を開始
SilentLivenessApi inputData
メソッドを呼び出して、検出用の画像データやその他のパラメーターを入力します。
メソッドの説明:検出用画像の入力。
2.4.5 テスト結果を取得
OnLivenessListener
にメソッドを実装して、検出結果を取得します。
メソッドの説明:完全な初期化。
メソッドの説明:照準ステータスを更新します。
メソッドの説明:生体検知が失敗しました。
メソッドの説明:生体検知が成功しました。
詳細については、OnLivenessListenerのライブラリを参照してください。
2.4.6 検出を停止し、ステータスをリセット
SilentLivenessApistop
メソッドを呼び出します。
メソッドの説明:現在の検出を停止し、検出ステータスをリセットします。 このメソッドは、失敗後に再試行するために使用されます。 init
が成功した後、release
が呼び出される前に呼び出す必要があります。 呼び出された後、start
を使用してdetection.silentlivenessapi.md
を再開できます)
2.4.7 検出をキャンセルしてリソースを解放
SilentLivenessApi
リリースメソッドを呼び出します。
メソッドの説明:検出をキャンセルし、リソースを解放します。
2.5 顔比較のためにプライベートクラウドインターフェースを呼び出し
生体検知が成功すると、SDKは対応する顔画像と暗号化されたバイナリファイルを返します。戻り値は、顔を比較するためのプライベートクラウドインターフェイスのパラメーターとして使用できます。
プライベートクラウドインターフェースの具体的な説明については、SenseIDプライベートクラウドAPIマニュアルを参照してください。
Last updated