>
Uniapp二代證讀取插件 CSYJM-4手持機NFC讀取SDK 手機
證卡識別、云解碼、護照識別儀、二代證讀卡器、人證核驗設(shè)備
供應(yīng)信息
所在地區(qū):河南省?鄭州市
經(jīng)營性質(zhì):生產(chǎn)加工
企業(yè)類型:私營有限責(zé)任公司
注 冊 地:鄭州市
主要經(jīng)營:證卡識別、云解碼、護照識別儀、二代證讀卡器、人證核驗設(shè)備
1、引入插件
在小程序的app.json中,加入插件。
"plugins": {
"readcard-plugin": {
"version": "2.3.7",
"provider": "wxa2583ebacdb87a6a"
}
}
2、基礎(chǔ)庫
調(diào)試基礎(chǔ)庫 2.20.3 及以上
微信版本:
iOS 暫不支持NFC(微信未支持),可使用藍牙外設(shè)讀卡器
Android 8.0.6及以上版本,同時支持NFC、藍牙外設(shè)讀卡器
讀取護照、通行證信息功能
// 設(shè)置讀卡護照、通行證參數(shù)
readSetting(){
// 設(shè)置APPID (開始讀卡之前,必須設(shè)置)
plugin.setAppId("appid聯(lián)系我司商務(wù)獲取", "", "");
// 日志保存目錄
// 默認在 Android/data/com.tencent.mm/MicroMsg/wxanewfiles目錄下 搜索 zrgk_mini_log
// 不需要日志時,可以不設(shè)置
plugin.setShowLog(wx.getFileSystemManager(), wx.env.USER_DATA_PATH);
// 讀卡參數(shù)設(shè)置,
var _Setting = {
decodeImageType: "dn1", // dn0: 無照片 dn1: 平臺解碼照片
readCardType: 9, // 9: NFC讀護照/通行證
saveLog: true, // 是否保存日志文件。設(shè)置true時,必須調(diào)用以上的 plugin.setShowLog(); 設(shè)置日志保存的目錄
openLocalCache: true, // 是否開啟本地緩存
// 解碼配置。
ipPortArray: [{
address: passport.sfzydq.com,
port: 18180,
canUse: true
}]
};
// 將參數(shù)設(shè)置給插件
plugin.readSetting(_Setting);
},
// OCR 識別機讀碼
ocr(){
// 打開相機拍照
this.chooseImageBase64().then((img) => {
wx.showLoading({
title: OCR識別中...,
})
// 識別類型
let type = 1; // 1:護照 2:來往港澳臺通行證 3:港澳臺居民來往內(nèi)地通行證 4:頭像面 5:國徽面
let url = "https://epassport.sfzydq.com/ocr/uploadImageBase64"; // OCR識別地址
return plugin.ocrMRZ(img, type, url);
}).then((res) => {
// 識別的結(jié)果
//{"code":200,"msg":"識別完成","data":{"dateOfExpiry":"261113","MRZLine1":"","documentNumber":"E90342672","MRZLine2":"E903426725CHN9405217M2611136MC0NMMNKPCNEA932","dateOfBirth":"940521"}}
}).catch((err) => {
wx.hideLoading();
wx.showToast({
title: err,
})
})
},
// 選擇圖片,返回base64
chooseImageBase64() {
// 使用前,申請相機相關(guān)權(quán)限
return new Promise(function (resolve, reject) {
wx.chooseMedia({
count: 1,
mediaType: [image],
sourceType: [album, camera],
sizeType: [compressed], // 使用 壓縮照片,否則識別速度慢
success(res) {
let size = res.tempFiles[0].size / 1024;
console.log("選擇的圖片大?。? + size + "Kb")
if (size > 2048) { // 照片不要超過2M,否則識別速度很慢
wx.showModal({
content: 文件大小不能超過2Mb,
showCancel: false,
confirmText: 好的,
confirmColor: #F74459,
success: function (res) {}
})
return
}
// tempFilePath可以作為 img 標簽的 src 屬性顯示圖片
const tempFilePath = res.tempFiles[0].tempFilePath //tempFilePaths[0]
// 獲取全局的文件管理器
const fileManager = wx.getFileSystemManager();
// fileManager.readFileSync(獲取文件路徑,轉(zhuǎn)碼格式) data:image/jpg;base64, +
let base64 = fileManager.readFileSync(tempFilePath, base64);
// 返回base64圖片
resolve(base64);
},
fail: function (err) {
reject(err);
}
})
});
},
// 初始化 讀卡示例代碼
initRead() {
if (initSuccess == true) {
wx.showToast({
title: 已經(jīng)初始化過了,
icon: none
});
return;
}
let startReadData = {
documentNumberStr: , // 9位護照號碼 如 E14403340
dateOfBirthStr: , // 6位出生如期 如 761123(年份不要前兩位)
dateOfExpiryStr: , // 6位有效日期 如 230408(年份不要前兩位)
isPassportPhoto: true // 是否需要護照的頭像照片
}
// 初始化并開始讀卡
plugin.startReadEpassport(startReadData, function (code, msg, value, cardType) {
let code_msg = "code:" + code + "
" + "msg:" + msg;
that.setData({
msg: code_msg,
});
switch (code) {
case StatusCode.ININ_ING.code: // 初始化中
wx.showLoading({
title: 初始化中...,
mask: true
});
break;
case StatusCode.ININ_OK.code: // 初始化成功
initSuccess = true;
wx.hideLoading();
wx.showToast({
title: 初始化成功,
icon: success
})
break;
case StatusCode.ININ_FAILE.code: // 初始化失敗
initSuccess = false;
wx.hideLoading();
if (msg.indexOf("13000") != -1) {
wx.showModal({
title: 溫馨提示,
content: 設(shè)備不支持NFC,
complete: (res) => {}
});
} else if (msg.indexOf("13001") != -1) {
wx.showModal({
title: 溫馨提示,
content: 系統(tǒng)NFC開關(guān)未打開,
complete: (res) => {}
});
} else {
wx.showToast({
title: msg,
icon: error
})
}
break;
case StatusCode.FIND_CARD_START.code: // 開始尋卡
wx.showToast({
title: 開始尋卡,
icon: success
})
break;
case StatusCode.FIND_CARD_SUCCESS.code: // 尋卡成功
allCount += 1;
wx.showToast({
title: 尋卡成功,
icon: success
})
break;
case StatusCode.READCARD_START.code: // 開始解碼
wx.showLoading({
title: 請勿移動卡片,
mask: true
})
break;
case StatusCode.READCARD_SUCCESS.code: // 解碼成功
wx.hideLoading();
wx.showToast({
title: 解碼成功,
icon: success
})
switch (cardType) {
case StatusCode.CARD_EPASSPORT.code: // 護照/通行證
// 讀取到的護照/通行證信息
// 詳細字段說明,詳見文檔下發(fā)的附錄
var cardInfo = JSON.parse(value);
console.log("信息:" , cardInfo);
// cardInfo.image字段,為base64編碼的照片字符串,可直接用于顯示
break;
}
break;
case StatusCode.READCARD_FAILE.code: // 解碼失敗
wx.hideLoading();
wx.showToast({
title: 解碼失敗 + msg,
icon: error
})
break;
}
});
}
4、獲取 deviceId
由于openid是由微信生成,網(wǎng)絡(luò)獲取可能存在延時。需在插件初始化成功后再獲取。
成功獲取到ID,都是以 “wxMini_” 開頭。
返回微信綁定ID。更換微信號或小程序宿主 ID會變。
需要將 https://epassport.sfzydq.com 配置合法域名
/
plugin.getDeviceId();
5、配置TCP合法域名
必須將參數(shù)配置時,配置的 ipPortArray 參數(shù)中的所有地址,加入到合法的TCP域名,
否則無法訪問到。
如配置:
tcp://yfs4.sfzydq.com
tcp://yfs3.sfzydq.com
tcp://yjm2.sfzydq.com
tcp://yfs3.sfzydq.com
tcp://passport.sfzydq.com
tcp://test.sfzydq.com
6、附錄
詳細信息IdCardData
字段 類型 注釋
type int 1080:中國居民
address string 家庭住址
birthday string 出生日期
dn string dn碼
endDate string 結(jié)束時間
startDate string 生效時間
id string 號碼
image String base64照片
issue string 簽發(fā)
name string 姓名
nation string 民族
sex string 性別
uuid string uuid
外國人居住證IdCardData:
字段 類型 注釋
type int 1081:新版外國人居住證 1083:舊版外國人居住證
birthday string 出生日期
dn string dn碼
endDate string 結(jié)束時間
startDate string 生效時間
id string 號碼
issue string 簽發(fā)
sex string 性別
uuid string uuid
image String base64照片
nameChinese string 中文姓名
nameEnglish string 英文姓名
nameEnglishAdd string 英文姓名備用
nationlity string 國籍
cardVersion string 卡版本號
cardType string 卡類型
historicalNumber string 既往版本號碼關(guān)聯(lián)項
renewalNumber string 換證次數(shù)
港澳臺居住證詳細信息IdCardData
字段 類型 注釋
type int 1082:港澳臺居住證
address string 家庭住址
birthday string 出生日期
dn string dn碼
endDate string 結(jié)束時間
startDate string 生效時間
id string 號碼
image String base64照片
issue string 簽發(fā)
name string 姓名
nation string 民族
sex string 性別
uuid string uuid
passCheckId string 通行證號碼
issuesNumber string 簽發(fā)次數(shù)
護照通行證詳細信息
字段 類型 注釋
nameOfHolder string 中文姓名
primaryIdentifier string 姓
secondaryIdentifier string 名
gender string 性別 M男 F女
dateOfBirth string 生日
nationality string 碼
dateOfExpiry string 有效期
documentNumber string 護照號碼
duration long 解碼時長
mrz string 機讀碼
personNumber string 個人號碼
idNumber string 號碼
image String base64照片
還沒找到您需要的Uniapp二代證讀取插件 CSYJM-4手持機NFC讀取SDK 手機?發(fā)布您的求購意向,讓供應(yīng)商主動與您聯(lián)系!
立即發(fā)布求購意向本網(wǎng)頁所展示的有關(guān)【Uniapp二代證讀取插件 CSYJM-4手持機NFC讀取SDK 手機】的信息/圖片/參數(shù)等由億諾千企網(wǎng)的會員【鄭州中軟高科信息技術(shù)有限公司】提供,由億諾千企網(wǎng)會員【鄭州中軟高科信息技術(shù)有限公司】自行對信息/圖片/參數(shù)等的真實性、準確性和合法性負責(zé),本站僅提供展示服務(wù),請謹慎交易,因交易而產(chǎn)生的法律關(guān)系及法律糾紛由您自行協(xié)商解決,本平臺對此不承擔(dān)任何責(zé)任。您在本網(wǎng)頁可以瀏覽【Uniapp二代證讀取插件 CSYJM-4手持機NFC讀取SDK 手機】有關(guān)的信息/圖片/價格等及提供【鄭州中軟高科信息技術(shù)有限公司】的商家公司簡介、聯(lián)系方式等信息。
在您的合法權(quán)益受到侵害時,歡迎您向郵箱發(fā)送郵件,或者進入《網(wǎng)站意見反饋》了解投訴處理流程,我們將竭誠為您服務(wù),感謝您對億諾千企網(wǎng)的關(guān)注與支持!