DONSEE系列多功能讀寫器Android Uniapp API接口規范V1.0.0
本項目Uniapp調用了身份證讀卡器的庫文件:DonseeDeviceLib-debug.aar,該庫放到nativeplugins\donsee-card\android,然后會自動加載。SDK會自動檢查是否擁有USB設備權限,如沒有權限,會自動進行申請,如果您的安卓設備是定制設備,遇到找不到設備時,請詢問設備定制方是否開放了USB接口的系統層權限。
<!--
//========================================================================
// Uniapp Android 端,調用.aar原生態讀卡庫
// 版權所有 廣東東信智能科技有限公司
// 未經授權不允許對程序代碼以任何形式任何目的的再發布
// 官方網站:http://www.eastcoms.com/
// 前端修改日期:2023.12.07
// =======================================================================
--><template><view class="content"><text class="title">{{ title }}</text><view><imagev-bind:src="imageUlr"style="width:204rpx; height: 256rpx;" ></image><viewclass="resultInfor"style="white-space: pre-wrap;">{{ result }}</view><button type="primary" @click="open">打開設備</button><button type="primary" @click="beep">蜂鳴器</button><button type="primary" @click="readIDCard">讀取身份證</button><button type="primary" @click="readSSCard">讀取社保卡</button><button type="primary" @click="getBankCardNo">讀取銀行卡</button><button type="primary" @click="readICUid">IC卡卡號</button><button type="primary" @click="close">關閉設備</button><!-- <view class="">{{result1}}</view> --></view></view>
</template><script>
const DonseeDevice = uni.requireNativePlugin('Card-Module');export default {data() {return {title: '歡迎使用廣東東信智能科技有限公司SDK',result: '請先打開讀卡設備',result1:0,imageUlr: '',};},onLoad() {},methods: {open(){DonseeDevice.Donsee_Open(data => {if(data.result == 0){this.result = "打開設備成功"}else if(data.result == -2){this.result = "打開設備失敗:未發現讀卡器";}else if(data.result == -4){this.result = "打開設備失敗:未獲取usb權限";}else {this.result = "打開設備失敗:"+data.result;}});},beep(){let ret = DonseeDevice.Donsee_Beep();if(ret == 0){this.result ="蜂鳴成功";}else{this.result ="蜂鳴失敗 "+ret;}},close(){let ret = DonseeDevice.Donsee_Close();if(ret == 0){this.result ="關閉設備成功";}else{this.result ="關閉設備失敗 "+ret;}},readIDCard(){let idInfo = DonseeDevice.Donsee_ReadIDCard(1); //1:文字+照片 2:文字+照片+指紋if(idInfo.code == 0){this.result = "中文姓名:"+ idInfo.name+"\n"+"英文姓名:"+ idInfo.enFullName+"\n"//如果是Y,則需要和英文姓名備用reserveName組合才是完整姓名+"性 別:"+ idInfo.sex+"\n"+"民 族:"+ idInfo.nation+"\n"+"出身日期:"+ idInfo.birthDate+"\n"+"家庭住址:"+ idInfo.address+"\n"+"身份證號:"+ idInfo.idNO+"\n"+"簽發單位:"+ idInfo.organs+"\n"+"開始有效期限:"+ idInfo.issueDate+"\n"+"結束有效期限:"+ idInfo.expireDate+"\n"+"證件類別:"+ idInfo.certType+"\n" //0 I J Y四種證件類型+"證件版本:"+ idInfo.certVersion+"\n"+"英文姓名備用:"+ idInfo.reserveName+"\n" +"既往版本號碼:"+ idInfo.previousVersionNO+"\n"+"通行證號:"+ idInfo.passNu+"\n"+"簽發數次:"+ idInfo.signCount+"\n"//+"指紋數據:"+ idInfo.figData+"\n"this.imageUlr = "data:image/png;base64,"+idInfo.headStr; //照片base64數據}else{this.result = idInfo.code; }},readSSCard(){let ssCardInfor = DonseeDevice.Donsee_ReadSSCard();if(ssCardInfor.code == 0){this.result = "姓 名:"+ ssCardInfor.name+"\n"+"性 別:"+ ssCardInfor.sex+"\n"+"民 族:"+ ssCardInfor.nation+"\n"+"出身日期:"+ ssCardInfor.birthDate+"\n"+"城市代碼:"+ ssCardInfor.city+"\n"+"身份證號:"+ ssCardInfor.idNO+"\n"+"社保卡號:"+ ssCardInfor.cardNO+"\n"+"開始有效期限:"+ ssCardInfor.issueDate+"\n"+"結束有效期限:"+ ssCardInfor.expireDate+"\n"+"社保版本:"+ ssCardInfor.fullVersion+"\n"}else{this.result = ssCardInfor.code; }},getBankCardNo(){let cardInfor = DonseeDevice.Donsee_GetBankCardNo();if(cardInfor.code == 0){this.result = "卡號:"+ cardInfor.cardNumber}else{this.result = cardInfor.code; }},readICUid(){let cardInfor = DonseeDevice.Donsee_ReadICUid();if(cardInfor.code == 0){this.result = "卡號:"+ cardInfor.cardNumber}else{this.result = cardInfor.code; }}}
};
</script><style>
.content {text-align: left;height: 400upx;
}
.resultInfor {text-align: left;
}.title {font-size: 36upx;color: #8f8f94;
}button {margin-top: 20upx;margin-bottom: 20upx;
}.button-sp-area {margin: 0 auto;width: 60%;
}.content {text-align: center;height: 400upx;
}.wrapper {flex-direction: column;justify-content: center;
}.button {width: 200px;margin-top: 20px;margin-left: 20px;padding-top: 20px;padding-bottom: 20px;border-width: 2px;border-style: solid;border-color: #458b00;background-color: #458b00;
}.text {font-size: 30px;color: #666666;text-align: center;
}
</style>