Uniapp原生插件调用文档
发布日期:2024-01-03 12:36:38
来源:XX
浏览次数
目前uniapp原生插件仅支持Android端的离线打包
测试使用的 appid 不可以用于商用(否则后果自负)。
商用的 appid 请务必联系我司商务进行分配。
uniapp使用原生插件示例
// 获取 读证件的 插件
var readCardModule = uni.requireNativePlugin("csht_readcard");
// 配置参数
var config = {
'openSound': true, // 蜂鸣器开关
'openLog': true, // 日志保存开关
'readType': 2, // 1: USB 2: NFC 3:串口读卡 5:Sam离线读卡 9:NFC电子护照
'nativePageUrl': '', //如果原生界面UI不满足时,可自定义传入web网页地址,进行自定义界面。如 https://***.com/read.html
'appId': "test", // 测试APPID,商用的 appid 请务必联系我司商务进行分配
'ipAndPort': [{ // 解码服务器地址,可配置多个服务器节点。第一个为主节点,其余为备用节点。
'ip': 'yfs3.sfzydq.com',
'port': 9999
}, {
'ip': 'yjm2.sfzydq.com',
'port': 9999
}]
};
// readType设置成 3,串口读卡时,必须设置 串口文件地址、波特率 两个参数。(不需要时,可删除)
config.deviceFilePath = "/dev/ttyS0";
config.baudrate = 115200;
// readType设置成 9,读取护照时,必须添加 护照号、生日、有效期 三个参数。 (不需要时,可删除)
config.documentNumberStr = "E90342672"; // 9位护照号码
config.dateOfBirthStr = "940521"; // 出生日期,格式为 YYMMDD
config.dateOfExpiryStr = "261113"; // 有效日期,格式为 YYMMDD
// 跳转原生NFC界面,开始读卡
readCardModule.gotoNativeNFCPage(config, (ret) => {
switch (ret.type) {
case "InitState": // 初始化状态信息回调
var code = ret.code; // 状态码 参照文档状态码说明
var msg = ret.msg; // 状态信息
var status = 'code: ' + code + ' msg: ' + msg;
break;
case "ReadCardState": // 读卡状态信息回调
var code = ret.code; // 状态码 参照文档状态码说明
var msg = ret.msg; // 状态信息
var status = 'code: ' + code + ' msg: ' + msg;
break;
case "ReadICCardSuccess": // 读其他卡成功
var dataJson = 'cardType: ' + ret.cardType + '\nicNumber' + ret.icNumber;
break;
case "ReadIDCardSuccess": // 读身份证成功
var headImage = ret.base64Image;
var data = ret.idCardData;
if (data.type == 1081) { // 外国人永居证
var dataJson =
'中文姓名: ' + data.nameChinese +
'\n英文姓名: ' + data.nameEnglish +
'\n性别: ' + data.sex +
'\n生日: ' + data.birthday +
'\n国籍: ' + data.nationlity +
'\n证件号码: ' + data.id +
'\n有效期限: ' + data.startDate + '-' + data.endDate;
} else if (data.type == 1082) { // 港澳台居住证
} else {
// 中国居民身份证
var dataJson =
'姓名: ' + data.name +
'\n民族: ' + data.nation +
'\n性别: ' + data.sex +
'\n生日: ' + data.birthday +
'\n住址: ' + data.address +
'\n证件号码: ' + data.id +
'\n签发机关: ' + data.issue +
'\n有效期限: ' + data.startDate + '-' + data.endDate;
}
break;
case "ReadPassportSuccess": // 读护照成功
var headImage = ret.base64Image;
var data = ret.idCardData;
var dataJson =
'姓名: ' + data.nameOfHolder + '/' + data.primaryIdentifier + data.secondaryIdentifier +
'\n性别: ' + data.gender +
'\n生日: ' + data.dateOfBirth +
'\n国家码: ' + data.nationality +
'\n护照号码: ' + data.documentNumber +
'\n有效期: ' + data.dateOfExpiry;
break;
default:
break;
}
});
官方APP离线打包文档
Android原生工程配置修改
添加读卡插件远程仓库
在Android原生工程根目录的build.gradle文件,新增如下配置:
buildscript {
ext.kotlin_version = "1.3.72"
repositories {
google()
jcenter()
mavenCentral()
// 中软高科读卡SDK仓库
maven {
url 'https://gitee.com/cshtzrgk/read-card-sdk/raw/master/Repositorys'
}
}
dependencies {
classpath "com.android.tools.build:gradle:3.6.2"
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
}
}
allprojects {
repositories {
google()
jcenter()
mavenCentral()
// 中软高科读卡SDK仓库
maven {
url 'https://gitee.com/cshtzrgk/read-card-sdk/raw/master/Repositorys'
}
}
}
添加原生插件依赖
在Android原生工程app目录的build.gradle文件,配置参考如下:
plugins {
id 'com.android.application'
id 'kotlin-android'
}
android {
defaultConfig {
multiDexEnabled = true
ndk {
abiFilters 'arm64-v8a','armeabi-v7a'
}
}
}
dependencies {
// 中软高科 uniapp 读卡插件,必须添加
implementation "io.github.CshtZrgk:CshtReadCard_UniPlugin:1.0.0"
implementation fileTree(include: ['*.aar', '*.jar'], dir: 'libs')
implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
implementation 'com.google.android.material:material:1.1.0'
implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
/*uniapp所需库-----------------------开始*/
implementation 'androidx.core:core-ktx:1.2.0'
implementation "androidx.swiperefreshlayout:swiperefreshlayout:1.0.0"
implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.3.2'
implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.3.2'
implementation 'androidx.annotation:annotation:1.1.0'
implementation 'androidx.multidex:multidex:2.0.1'
implementation 'androidx.recyclerview:recyclerview:1.1.0'
implementation 'com.facebook.fresco:fresco:1.13.0'
implementation "com.facebook.fresco:animated-gif:1.13.0"
/*uniapp所需库-----------------------结束*/
// 基座需要,必须添加
implementation 'com.github.bumptech.glide:glide:4.9.0'
implementation 'com.alibaba:fastjson:1.2.83'
implementation 'androidx.webkit:webkit:1.3.0'
implementation 'androidx.localbroadcastmanager:localbroadcastmanager:1.0.0'
implementation 'androidx.core:core:1.1.0'
implementation "androidx.fragment:fragment:1.1.0"
implementation 'androidx.appcompat:appcompat:1.1.0'
}
身份证详细信息
字段 | 类型 | 注释 |
---|---|---|
type | int | 1080:中国居民身份证 |
address | string | 家庭住址 |
birthday | string | 出生日期 |
dn | string | dn码 |
endDate | string | 身份证结束时间 |
startDate | string | 身份证生效时间 |
id | string | 身份证号码 |
issue | string | 签发机关 |
name | string | 姓名 |
nation | string | 民族 |
sex | string | 性别 |
uuid | string | uuid |
base64Image | String | base64照片 |
外国人永久居住证
字段 | 类型 | 注释 |
---|---|---|
type | int | 1081:外国人永久居住证 |
birthday | string | 出生日期 |
dn | string | dn码 |
endDate | string | 身份证结束时间 |
startDate | string | 身份证生效时间 |
id | string | 身份证号码 |
issue | string | 签发机关 |
sex | string | 性别 |
uuid | string | uuid |
base64Image | String | base64照片 |
nameChinese | string | 中文姓名 |
nameEnglish | string | 英文姓名 |
nameEnglishAdd | string | 英文附加姓名 |
nationlity | string | 国籍 |
cardVersion | string | 卡版本号 |
cardType | string | 卡类型 |
historicalNumber | string | 历史号码 |
renewalNumber | string | 续签数 |
电子护照详细信息
字段 | 类型 | 注释 |
---|---|---|
nameOfHolder | string | 中文姓名 |
primaryIdentifier | string | 姓 |
secondaryIdentifier | string | 名 |
gender | string | 性别 M男 F女 |
dateOfBirth | string | 生日 |
nationality | string | 国家码 |
dateOfExpiry | string | 有效期 |
documentNumber | string | 护照号码 |
duration | long | 解码时长 |
base64Image | String | base64照片 |
状态码对应表
复制 READCARD_SUCCESS(1000, "解码成功"),
ININ_OK(1001, "初始化成功"),
ININ_FAILE(1002, "初始化失败"),
USB_NODEVICE_CODE(1003, "未发现读卡设备,请检查usb连接"),
USB_NOREADCARD_CODE(1004, "没有检测到读卡设备"),
USB_SYSYTEMREEOE_CODE(1005, "系统usb异常,请检查usb连接"),
USB_NOINTERFACE_CODE(1006, "usb没有建立连接"),
USB_NOCHANNLE_CODE(1007, "usb通道打开失败"),
USB_NOSERVICE_CODE(1008, "没有usb服务"),
SOCKET_SYS_CODE(1010, "网络通讯异常"),
LOCAL_DATA_ERROR(1018, "本地通信失败"),
UNKONW_ERROR(1020, "未知异常"),
READCARD_START(1021, "解码开始"),
READCARD_FAILE(1022, "解码失败"),
READCARD_READING(1023, "解码中"),
FIND_CARD_START(1024, "开始寻卡"),
FIND_CARD_FAIL(1025, "寻卡失败"),
FIND_CARD_SUCCESS(1026, "寻卡成功"),
READ_UID_FAILE(1031, "UID异常"),
SERIALPORT_NOINTERFACE_CODE(1036, "串口异常,请检查设备"),
SERIALPORT_DATA_ERROR(1038, "串口异常"),
卡类型
CARD_IC(
上一篇
第一页
下一篇
身份证读卡SDK调用文档V3