我在 react native ios app 中实现了 blinkid-react-native。blinkid-react-native 将使我能够扫描 id 并验证其上的数据。当我运行我的代码时,我得到的 json 只显示了地址。
由于我无法打开相机以扫描 ios 模拟器中的 id。我部署了应用程序来测试飞行。我需要调试并查看 javascript console.logs。我无法从试飞中做到这一点?
我不确定如何调试问题?由于我无法在 ios 模拟器上打开相机来运行 BlinkId 并通过 console.logs。
这是我得到的json
这是 BlinkId 代码
export const scanId = async () => {
console.log('BlinkId*****************');
const licenseKey = Platform.select({
ios:
'**********',
android:
'**********',
});
BlinkIDReactNative.SuccessFrameGrabberRecognizer(mrtdRecognizer);
var blinkIdCombinedRecognizer = new BlinkIDReactNative.BlinkIdCombinedRecognizer();
blinkIdCombinedRecognizer.returnFullDocumentImage = true;
blinkIdCombinedRecognizer.returnFaceImage = true;
const scanningResults = await BlinkIDReactNative.BlinkID.scanWithCamera(
new BlinkIDReactNative.BlinkIdOverlaySettings(),
new BlinkIDReactNative.RecognizerCollection([
blinkIdCombinedRecognizer /*, mrtdSuccessFrameGrabber*/,
]),
licenseKey,
)
.then((result) => handleResult(result))
.catch((e) => e);
return scanningResults;
};
console.log('BlinkId+scanningResults*****************');
console.log(this.scanningResults);
console.log('BlinkId+result1*****************');
console.log(this.result);
const handleResult = (result) => {
function buildResult(result, key) {
if (result && result != -1) {
return key + ': ' + result + '\n';
}
return '';
}
console.log('BlinkId+result2*****************');
console.log(result);
function buildDateResult(result, key) {
if (result) {
return (
key +
': ' +
result.day +
'.' +
result.month +
'.' +
result.year +
'.' +
'\n'
);
}
return '';
}
var localState = {
showFrontImageDocument: false,
resultFrontImageDocument: '',
showBackImageDocument: false,
resultBackImageDocument: '',
resultImageFace: '',
results: '',
showSuccessFrame: false,
successFrame: '',
};
console.log('BlinkId+result3*****************');
console.log(result);
if (result instanceof BlinkIDReactNative.BlinkIdCombinedRecognizerResult) {
let blinkIdResult = result;
console.log('BlinkId+blinkIdResult*****************');
console.log(blinkIdResult);
let resultString =
buildResult(blinkIdResult.firstName, 'First name') +
buildResult(blinkIdResult.lastName, 'Last name') +
buildResult(blinkIdResult.fullName, 'Full name') +
buildResult(blinkIdResult.localizedName, 'Localized name') +
buildResult(
blinkIdResult.additionalNameInformation,
'Additional name info',
) +
buildResult(blinkIdResult.address, 'Address') +
buildResult(
blinkIdResult.additionalAddressInformation,
'Additional address info',
) +
buildResult(blinkIdResult.documentNumber, 'Document number') +
buildResult(
blinkIdResult.documentAdditionalNumber,
'Additional document number',
) +
buildResult(blinkIdResult.sex, 'Sex') +
buildResult(blinkIdResult.issuingAuthority, 'Issuing authority') +
buildResult(blinkIdResult.nationality, 'Nationality') +
buildDateResult(blinkIdResult.dateOfBirth, 'Date of birth') +
buildResult(blinkIdResult.age, 'Age') +
buildDateResult(blinkIdResult.dateOfIssue, 'Date of issue') +
buildDateResult(blinkIdResult.dateOfExpiry, 'Date of expiry') +
buildResult(
blinkIdResult.dateOfExpiryPermanent,
'Date of expiry permanent',
) +
buildResult(blinkIdResult.expired, 'Expired') +
buildResult(blinkIdResult.maritalStatus, 'Martial status') +
buildResult(blinkIdResult.personalIdNumber, 'Personal id number') +
buildResult(blinkIdResult.profession, 'Profession') +
buildResult(blinkIdResult.race, 'Race') +
buildResult(blinkIdResult.religion, 'Religion') +
buildResult(blinkIdResult.residentialStatus, 'Residential status') +
buildResult(blinkIdResult.processingStatus, 'Processing status') +
buildResult(blinkIdResult.recognitionMode, 'Recognition mode');
let licenceInfo = blinkIdResult.driverLicenseDetailedInfo;
if (licenceInfo) {
resultString +=
buildResult(licenceInfo.restrictions, 'Restrictions') +
buildResult(licenceInfo.endorsements, 'Endorsements') +
buildResult(licenceInfo.vehicleClass, 'Vehicle class') +
buildResult(licenceInfo.conditions, 'Conditions');
}
// there are other fields to extract
localState.results += resultString;
// Document image is returned as Base64 encoded JPEG
if (blinkIdResult.fullDocumentFrontImage) {
localState.showFrontImageDocument = true;
localState.resultFrontImageDocument =
'data:image/jpg;base64,' + blinkIdResult.fullDocumentFrontImage;
}
if (blinkIdResult.fullDocumentBackImage) {
localState.showBackImageDocument = true;
localState.resultBackImageDocument =
'data:image/jpg;base64,' + blinkIdResult.fullDocumentBackImage;
}
// Face image is returned as Base64 encoded JPEG
if (blinkIdResult.faceImage) {
localState.showImageFace = true;
localState.resultImageFace =
'data:image/jpg;base64,' + blinkIdResult.faceImage;
}
} else {
throw JSON.stringify(result);
}
console.log('BlinkId+localState*****************');
console.log(localState);
return localState;
};