1

MBDocumentVerificationOverlayViewControllerコントローラーとレコグナイザーに使用する必要がある両面をスキャンするためのドキュメントに基づいて、mircoblink で国民カードの両面をスキャンしようとしていますMBBlinkIdCombinedRecognizer。しかし、私の前面スキャンのみがうまく機能します。デモ シリアル キーを使用していますが、それが自分のシリアル キーに関連しているかどうかわかりません。

ここに私のコードがあります:

    /** Create BlinkID recognizer */
    blinkIdRecognizer = MBBlinkIdCombinedRecognizer()

    /** Create BlinkID settings */
    let settings : MBDocumentVerificationOverlaySettings = MBDocumentVerificationOverlaySettings()

    /** Crate recognizer collection */
    let recognizerCollection : MBRecognizerCollection = MBRecognizerCollection(recognizers: [blinkIdRecognizer!])

    /** Create your overlay view controller */
    let documentOverlayViewController : MBDocumentVerificationOverlayViewController = MBDocumentVerificationOverlayViewController(settings: settings, recognizerCollection: recognizerCollection, delegate: self)

    /** Create recognizer view controller with wanted overlay view controller */
    let recognizerRunneViewController : UIViewController = MBViewControllerFactory.recognizerRunnerViewController(withOverlayViewController: documentOverlayViewController)

    /** Present the recognizer runner view controller. You can use other presentation methods as well (instead of presentViewController) */
    present(recognizerRunneViewController, animated: true, completion: nil)

これは私のデリゲートコードです:

extension MyVC: MBDocumentVerificationOverlayViewControllerDelegate {

    func documentVerificationOverlayViewControllerDidFinishScanningFirstSide(_ documentVerificationOverlayViewController: MBDocumentVerificationOverlayViewController) {
        print("First Side Scanned")
    }

    func documentVerificationOverlayViewControllerDidFinishScanning(_ documentVerificationOverlayViewController: MBDocumentVerificationOverlayViewController, state: MBRecognizerResultState) {

        if (self.blinkIdRecognizer?.combinedResult.resultState == MBRecognizerResultState.valid) {
            guard let result = blinkIdRecognizer?.combinedResult else {
                return
            }

            DispatchQueue.main.async {

                if self.blinkIdRecognizer?.combinedResult.scanningFirstSideDone == true {

                } else {
                    documentVerificationOverlayViewController.dismiss(animated: true, completion: nil)
                }

            }
        }
    }

    func documentVerificationOverlayViewControllerDidTapClose(_ documentVerificationOverlayViewController: MBDocumentVerificationOverlayViewController) {
        self.dismiss(animated: true, completion: nil)
    }

}

そして、スキャンの最初の側のデリゲートは呼び出されませんが、応答が見られますDidFinish

助けてくれてありがとう

4

2 に答える 2

2

使用している SDK のバージョンは何ですか?

バージョン 5.2 では、ドイツ ID の表面と裏面の両方のスキャンを追加しました。

最新リリースはこちらからダウンロードできます: https://github.com/BlinkID/blinkid-ios/releases

今すぐテストして、うまくいったかどうかお知らせください。

ミラノ

于 2020-02-12T13:29:32.410 に答える