微信小程序怎么讀取身份證?
第一步:介紹一下微信小程序開發(fā)步驟:
熟悉開發(fā)工具:首先,你需要了解微信小程序開發(fā)工具有哪些相關(guān)的知識。微信小程序開發(fā)工具提供了圖形化開發(fā)環(huán)境,使得開發(fā)者能夠更容易地進(jìn)行小程序的開發(fā)工作。這是基礎(chǔ)的一步。編寫小程序代碼:微信小程序采用類似HTML、CSS和JavaScript等Web前端技術(shù)進(jìn)行開發(fā)。你需要掌握這些基礎(chǔ)知識,并根據(jù)具體業(yè)務(wù)需求編寫各種小程序功能。這是開發(fā)過程中最重要的一步,需要深入理解并運(yùn)用這些技術(shù)。功能測試:在編寫完小程序代碼之后,你需要使用微信開發(fā)工具進(jìn)行模擬器測試以驗證功能是否正常。這是一個非常重要的步驟,可以幫助你及早發(fā)現(xiàn)并修復(fù)可能存在的問題。
上傳并發(fā)布:完成功能測試后,你需要將小程序上傳到微信小程序的開放平臺,并通過一系列審核流程,最終發(fā)布小程序。這一步需要耐心等待,一旦通過審核,你的小程序就可以向公眾展示。以上就是微信小程序開發(fā)的完整流程,每個步驟都至關(guān)重要,需要開發(fā)者認(rèn)真對待。
第二步:進(jìn)入微信小程序身份證讀取插件官網(wǎng)地址:
https://mp.weixin.qq.com/wxopen/plugindevdoc?appid=wxa2583ebacdb87a6a
必備條件:運(yùn)行小程序的設(shè)備或手機(jī),必須開啟NFC功能
第三步:根據(jù)插件集成說明集成
中軟高科·小程序身份證云解碼插件
1、引入插件
在小程序的app.json中,加入插件。
"plugins": {
"readcard-plugin": {
"version": "2.0.0",
"provider": "wxa2583ebacdb87a6a"
}
}
2、基礎(chǔ)庫
調(diào)試基礎(chǔ)庫 2.18.1及以上
微信版本:
iOS 暫不支持
Android 8.0.6及以上版本
3、使用插件
在需要使用身份證讀卡的頁面中,使用插件。
const plugin = requirePlugin('readcard-plugin');
var StatusCode = null;
var that = this;
var initSuccess = false;
Page({
data: {
idCardInfo: null,
},
onLoad() {
that = this;
StatusCode = plugin.StatusCodeEnum();
console.log("對照狀態(tài)碼:", StatusCode);
// 設(shè)置APPID (開始讀卡之前,必須設(shè)置)
plugin.setAppId("appid聯(lián)系我司商務(wù)獲取");
// 設(shè)置讀卡SDK參數(shù)
that.readSetting();
// 初始化NFC讀卡。
// 初始化之前,請先自行判斷設(shè)備是否支持NFC、系統(tǒng)NFC開關(guān)是否打開
that.initRead();
},
// 設(shè)置讀卡SDK參數(shù)
readSetting(){
// 日志保存目錄
// 默認(rèn)在 Android/data/com.tencent.mm/MicroMsg/wxanewfiles目錄下 搜索 zrgk_mini_log
// 不需要日志時,可以不設(shè)置
plugin.setShowLog(wx.getFileSystemManager(), wx.env.USER_DATA_PATH);
// 讀卡參數(shù)設(shè)置,根據(jù)需要自行修改參數(shù)值,參數(shù)名稱及類型不可修改。
var _Setting = {
decodeImageType: "dn1", // dn0: 無照片 dn1: 平臺解碼照片
saveLog: false, // 是否保存日志文件。設(shè)置true時,必須調(diào)用以上的 plugin.setShowLog(); 設(shè)置日志保存的目錄
openLocalCache: true, // 是否開啟本地緩存
// 解碼服務(wù)器配置。
// 默認(rèn)第1個為主服務(wù)器,優(yōu)先使用。
// 其余皆為備用服務(wù)器,主服務(wù)器異常時自動切換啟用
ipPortArray: [{
address: 'yfs3.sfzydq.com',
port: 9999,
canUse: true
}, {
address: "yjm2.sfzydq.com",
port: 9999,
canUse: true
}]
};
// 將參數(shù)設(shè)置給插件
plugin.readSetting(_Setting);
},
// 初始化 讀卡示例代碼
initRead() {
if (initSuccess == true) {
wx.showToast({
title: '已經(jīng)初始化過了',
icon: 'none'
});
return;
}
// 初始化并開始讀卡
plugin.startReadCard(function (code, msg, value, cardType) {
that.setData({
msg: "code:" + code + "\n" + "msg:" + msg,
});
switch (code) {
case StatusCode.ININ_OK.code: // 初始化成功
initSuccess = true;
wx.showToast({
title: '初始化成功',
icon: 'success'
});
break;
case StatusCode.ININ_FAILE.code: // 初始化失敗
initSuccess = false;
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.READ_NFC_TAG.code: // 識別到NFC標(biāo)簽
wx.showLoading({
title: '請勿移動卡片',
});
break;
case StatusCode.READCARD_SUCCESS.code: // 解碼成功
wx.hideLoading();
wx.showToast({
title: '解碼成功',
icon: 'success'
});
switch (cardType) {
case StatusCode.CARD_IC.code: // IC卡
console.log("IC卡:" , value);
break;
case StatusCode.CARD_LCT_STUDENT.code: // 綠城通學(xué)生卡
console.log("綠城通學(xué)生卡:" , value);
break;
case StatusCode.CARD_LCT_NORMAL.code: // 綠城通普通卡
console.log("綠城通普通卡:" , value);
break;
case StatusCode.CARD_LCT_OLD.code: // 綠城通老年卡
console.log("綠城通老年卡:" , value);
break;
case StatusCode.CARD_IDCARD.code: // 身份證
// 讀取到的身份證信息
var idCardInfo = JSON.parse(value);
console.log("身份證信息:" , idCardInfo);
// 當(dāng)設(shè)置平臺解碼身份證照片時,
// idCardInfo.image字段,為base64編碼的照片字符串,可直接用于顯示
// idCardInfo.type=1080 中國居民身份證
// idCardInfo.type=1081 外國永久居住證
// idCardInfo.type=1082 港澳臺居住證
break;
}
break;
case StatusCode.READCARD_FAILE.code: // 解碼失敗
wx.hideLoading();
wx.showToast({
title: '解碼失敗' + StatusCode.READCARD_FAILE.code,
icon: 'error'
});
break;
}
});
},
/**
* 生命周期
*/
onShow() {
console.log("onShow", "界面顯示");
},
onHide() {
console.log("onHide", "界面隱藏");
},
onUnload() {
console.log("onUnload", "界面銷毀,需要停止讀卡");
plugin.stopReadCard();
}
})
4、配置TCP合法域名
必須將參數(shù)配置時,配置的 ipPortArray 參數(shù)中的所有服務(wù)器地址,加入到合法的TCP域名,
否則無法訪問到服務(wù)器。
如配置:
tcp://yjm2.sfzydq.com
tcp://yfs3.sfzydq.com
溫馨提示:
可以先試用默認(rèn)DEMO做一下讀取身份證的體驗2海飛思微信讀卡小程序試用方式:微信界面,下拉通知框,搜索“海飛思”即可。
特別聲明:以上內(nèi)容(如有圖片或視頻亦包括在內(nèi))為自媒體平臺“機(jī)電號”用戶上傳并發(fā)布,本平臺僅提供信息存儲服務(wù)
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of JDZJ Hao, which is a social media platform and only provides information storage services.