IC卡读写接口说明资料

发布时间 : 星期三 文章IC卡读写接口说明资料更新完毕开始阅读

军软IC卡读写操作库使用说明

binary 9. 预留2 10. 预留3 String或binary String或binary 度 1+length 前段一个字节用于记录字符串或字节数组长度 1+length 前段一个字节用于记录字符串或字节数组长度 PS:因人员信息存取空间限定9个块即144个字节,所以不宜超过。

2.API说明

2.1 初始化SO

public native static void initDll();

程序启动时必须先调用此方法初始化IC卡读写库

2.2 释放SO

public native static void freeDll(); 程序退出时请调用此方法释放IC卡读写库,否则可能会引起内存泄漏

2.3打开读卡器串口

public native static boolean initReader(int cardType);

初始化读卡器,参数:卡类型,0x02 == A卡;0x01 == B卡; 返回值说明:

True:成功 False:失败 2.4关闭读卡器

public native static boolean closeReader(); 关闭读卡器操作,一般读完卡即关闭 返回值说明:

True:成功 False:失败

? 广州军软科技有限公司

Page 5 of 9

军软IC卡读写操作库使用说明

2.5判断Rfid是否打开

public native static boolean isOpened();

判断读卡器是否打开。 返回值说明:

True:已打开 False:未打开

2.6寻卡

public native static byte[] searchCard();

寻卡操作,返回数据中第一元素为数据长度,为0时表示读取失败或卡不存在;

2.7读取ic卡状态

public native static short getIcCardState(); short state = rfid.getIcCardState(); switch (state) {

case 0:

edtCardState.setText(\未初始化\); break; 读取IC卡状态,取到的是状态代码;

case 1: edtCardState.setText(\已初始化\); break;

case 3:

edtCardState.setText(\已写资料\); break;

case 5:

edtCardState.setText(\已写指纹\); break;

case 7:

edtCardState.setText(\已写指纹、信息\); break;

case 9:

edtCardState.setText(\已写钱包\); break;

Page 6 of 9

? 广州军软科技有限公司

军软IC卡读写操作库使用说明

case 11:

edtCardState.setText(\已写信息、钱包\); break;

case 15: }

edtCardState.setText(\已写信息、指纹、钱包\); break;

2.8读人员资料

public native static byte[] readPerson();

返回数据中第一元素为数据长度,为0时表示读取失败;

2.9写入备注信息1

public native static boolean setReserved1(byte[] reserved1);

用于修改人员资料中的备注信息,重要信息不得写入此处,以防被篡改。

2.9写入备注信息2

public native static boolean setReserved2(byte[] reserved2);

用于修改人员资料中的备注信息,重要信息不得写入此处,以防被篡改。

2.9写入备注信息3

public native static boolean setReserved3(byte[] reserved3);

用于修改人员资料中的备注信息,重要信息不得写入此处,以防被篡改。

2.10验证无指纹卡

public native static boolean checkNullFinger();

判断IC卡是否为无指纹卡。 返回值说明:

True:无指纹卡 False:非无指纹卡

? 广州军软科技有限公司

Page 7 of 9

军软IC卡读写操作库使用说明

2.11读指纹

public native static byte[] readFinger(byte fingerIndex);

读指纹操作,fingerIndex为指纹順序号,多指紋時有效,取值從1開始。

返回的字节数组第一个字节为1时表示成功,0时表示失败,

返回的字节数组第二个字节为指纹类别,1单指纹;2为多指纹;3为无指纹 剩余部分为指纹信息,512字节

2.12读钱包1余额

public native static double getMoney();

读取钱包1余额,失败时返回-1,成功时返回余额

2.13钱包1扣费

public native static double decMoney(double value); 钱包1扣费操作,失败时返回-1,成功时返回余额

2.14读钱包2余额

public native static float getMoney2(); 读取钱包2余额,失败时返回-1,成功时返回余额

2.15钱包2扣费

public native static float decMoney2(float value);

钱包扣费操作,失败时返回-1,成功时返回余额

2.16判断钱包是否锁定

public native static boolean isLockWallet(byte walletIndex);

返回值说明:

True:已锁定 False:未锁定

? 广州军软科技有限公司

Page 8 of 9

联系合同范文客服:xxxxx#qq.com(#替换为@)