支持IC卡读卡器在andriod中应用,andriod4.0及以上
目录
超高频UHF读写器安卓开发
简介
NFC读写器Android开发指南
类usbreader
类readerhardware
类G2
高频HF读写器NFC读写器安卓开发
简介
NFC读写器Android开发指南
类usbreader
类readerhardware
类iso14443A
类PSam
类id2card
随着Android系统的设备越来越多,在Andriod设备上使用UHF读写器变得越来越广泛。为了将UHF读写器应用android设备上,友我科技独立研发了UHF读写器的android开发包,使用此开发包,工程师只需在工程中导入jar包,使用java语言就可以轻松的开发出Android下的UHF读写器应用APP。
项目 | 信息 |
---|---|
支持的Android系统 | 4.0及以上版本 |
读卡器接口 | USB HID(需OTG数据线) |
jar包及下载 | yoworfidreaderuhf.jar |
支持的NFC读写器 | YW-602H |
获取NFC读写器样品 | 购买YW-602H |
演示程序 |
扫描下载: |
在所有API接口中有3种返回值,说明如下:
第一种:void, 无任何返回值
第二种:int,返回整形,>=0为成功,<0为失败
第三种:byte[], byte数组, 如果为null则为失败,只要不为null,就是执行成功
首先在工程中导入yoworfidreaderuhf.jar接口包,同时在在order and Export中选中yoworfidreaderuhf.jar 包,这样可以随着你的应用程序一起发布。
然后再自己的工程中创建usbreaderuhf的object,如下所示:
public usbreadeuhfr rfidreader;
rfidreader = new usbreaderuhf();
只要rfidreader!=null,就可以使用了。
类usbreaderuhf的属性:
属性名 | 类型(类名) | 名称 | 备注 |
---|---|---|---|
ReaderHardware | readerhardware | NFC读卡器硬件操作类 | 可以操作读卡器的蜂鸣器,LED灯等 |
G2 | G2 | ISO18000-6C,G2类型的标签操作类 | 操作ISO18000-6C,G2标签 |
1. void TryUSB(Context context)
TryUSB方法的作用是尝试连接USB设备,在android系统下,连接USB设备会出现权限的提示窗口,需要此时点击是按钮。
rfidreader.TryUSB(this);
2. boolean Initial(Context context)
Initial方法的作用是初始化 UHF读写器YW-602H,只有经过初始化后才能对读卡器进行其他操作。初始化成功返回true,失败返回false。
rfidreader.Initial(this);
usbreaderuhf类有多个public的属性,这些属性分别操作各类IC卡片
1、ReaderHardware,类名:readerhardware,功能:管理读卡器硬件和切换卡片类型
1.1 int YW_GetLibVersion()
YW_GetLIBVersion方法获取jar库的版本号。如下代码所示:
int Ver = rfidreader.ReaderHardware.YW_GetLibVersion();
1.2 int YW_GetReaderVersion()
YW_GetReaderVersion方法获取UHF读写器YW-602H的版本号。如下代码所示:
int Ver = rfidreader.ReaderHardware.YW_GetReaderVersion();
1.3 byte[] YW_GetReaderSerial()
YW_GetReaderSerial方法获取UHF读写器YW-602H的序列号。如下代码所示:
byte[] SerialNo = rfidreader.ReaderHardware.YW_GetReaderSerial();
1.4 byte[] YW_GetReaderNo()
YW_GetReaderSerial方法获取UHF读写器YW-602H型号。如下代码所示:
byte[] ModelNo = rfidreader.ReaderHardware.YW_GetReaderNo();
1.5 int YW_Buzzer(int Time_ON, int Time_OFF, int Cycle)
YW_Buzzer方法控制NFC读写器的蜂鸣器。参数如下:
Time_ON: 蜂鸣器鸣叫的时间(100ms单位)
Time_OFF: 蜂鸣器不响的时间(100ms单位)
Cycle:上述循环的次数
rfidreader.ReaderHardware.YW_Buzzer(5,5,1);
1.6 int YW_Led(int LEDIndex, int Time_ON, int Time_OFF, int Cycle, int LedIndexOn)
YW_Led方法控制NFC读写器的LED灯。参数如下:
LEDIndex:LED灯的序号
Time_ON: 蜂鸣器鸣叫的时间(100ms单位)
Time_OFF: 蜂鸣器不响的时间(100ms单位)
Cycle:上述循环的次数
LedIndexOn:最后灯亮的LED序号
rfidreader.ReaderHardware.YW_Led(1,5,5,1,1);
1.7 int YW_SetPower(int Power)
YW_SetPower方法设置读卡器的功率,功率范围从1200到2000可以设置,理论上功率越大,读卡距离越远.读卡器默认功率为1450.。参数如下:
Power:功率值1200到2000
rfidreader.ReaderHardware.YW_SetPower (1450);
1.8 int YW_GetPower()
YW_GetPower获取读卡器当前工作的功率.
int Power=rfidreader.ReaderHardware.YW_GetPower();
1.9 int YW_SetInventoryThreshold(int Threshold)
YW_ SetInventoryThreshold方法设置读卡器的寻卡阈值,值得范围在190到210之间,值越大读卡距离越小,对于功率一定, 卡相同的情况下,可以设置此值来控制读卡距离。参数如下:
Threshold:寻卡阈值190到210
rfidreader.ReaderHardware.YW_SetInventoryThreshold (200);
1.10 int YW_GetInventoryThreshold()
YW_ GetInventoryThreshold获取读卡器当前工作的寻卡阈值.
int Threshold=rfidreader.ReaderHardware.YW_GetInventoryThreshold();
2、G2,类名:G2,功能:操作ISO18000-6C,G2等UHF标签
类G2的属性:
属性名 | 类型(类名) | 名称 | 备注 |
---|---|---|---|
MEMBANK_RESERVED | byte | 保留区 | 常量 |
MEMBANK_EPC | byte | EPC区 | 常量 |
MEMBANK_TID | byte | TID区 | 常量 |
MEMBANK_USER | byte | 用户区 | 常量 |
类G2的方法:
2.1 byte[] YW_G2_Inventory()
UHF电子标签盘库寻卡,读到卡返回EPC,没有读到卡返回null.每次返回一张卡的EPC, 对于多张卡, 可以多次调用.
byte[] EPC = rfidreader.G2.YW_G2_Inventory();
if(EPC==null)return;
2.2 byte[] YW_G2_Read(byte[] EPC, byte MemType, byte StartPos, byte ReadLen,int Password)
读UHF电子标签的内存区,参数如下:
byte[] EPC: 输入,要读的UHF标签的EPC.
byte MemType: 内存类型,用户区,EPC区,TID区,保留区中的一个.
byte StartPos:起始地址,字节为单位,但必须是2的倍数.
byte ReadLen:要读的字节数,必须是2的倍数.
int Password: 读写的密码,默认为0.
byte[] Data= rfidreader.G2.YW_G2_Read (EPC, rfidreader.G2. MEMBANK_USER,0,10,0);
if(Data==null)return
2.3 int YW_G2_Write(byte[] EPC,byte MemType, byte StartPos,int Password,byte[] G2Data)
写UHF电子标签的内存区,参数如下:
byte[] EPC: 输入,要写的UHF标签的EPC.
byte MemType: 内存类型,用户区,EPC区,TID区,保留区中的一个.
byte StartPos:起始地址,字节为单位,但必须是2的倍数.
int Password: 读写的密码,默认为0.
byte[] G2Data: 要写得数据数组,数组长度必须是2的倍数.
byte[] Data =new byte[10];
…
int rt= rfidreader.G2. YW_G2_Write(EPC, rfidreader.G2. MEMBANK_USER,0,0, Data);
if(rt<=0)return
2.4 int YW_G2_WriteEPC(byte[] EPC, int Password)
写UHF电子标签的EPC代码,相当于修改卡号,每次只能写一张标签,参数如下:
byte[] EPC:新的EPC代码,数组长度必须是2的倍数.
int Password: 读写的密码,默认为0.
byte[] NewEPC=new byte[12];
…
int rt= rfidreader.G2.YW_G2_WriteEPC(NewEPC, 0);
if(rt<=0)return
2.5 int YW_G2_KillTag(byte[] EPC,int Password)
灭活一张电子标签,灭活后,标签将不可用,如果KillPassword=0,则不能灭活,即kill失败. 参数如下:
byte[] EPC:要操作的电子标签的EPC.
int Password: KillPassword的密码,当为0,则不能灭活.
int KillPassword=5230;
int rt= rfidreader.G2. YW_G2_KillTag (EPC, KillPassword);
if(rt<=0)return
2.6 int YW_G2_SetProtected(byte[] EPC,byte Protect, byte ProtectMode,int Password)
标签设置保护, 参数如下:
byte[] EPC:要操作的电子标签的EPC.
byte Protect:
0x00时,控制销毁密码读写保护设定。
0x01时,控制访问密码读写保护设定。
0x02时,控制EPC存储区读写保护设定。
0x03时,控制TID存储区读写保护设定。
0x04时,控制用户存储区读写保护设定。
byte ProtectMode:
当Protect为0x00或0x01,即当设置Kill密码区或访问密码区的时候,ProtectMode的值代表的意义如下:
0x00:设置为无保护下的可读可写
0x01:设置为永远可读可写
0x02:设置为带密码可读可写
0x03:设置为永远不可读不可写
当Protect为0x02、0x03、0x04的时候,即当设置EPC区、TID区及用户区的时候,ProtectMode的值代表的意义如下:
0x00:设置为无保护下的可写
0x01:设置为永远可写
0x02:设置为带密码可写
0x03:设置为永远不可写
int Password: 访问password的密码
int rt= rfidreader.G2. YW_G2_ SetProtected (EPC, 2,3,0);
if(rt<=0)return
2.7 int YW_G2_Earse(byte[] EPC,byte MemType, byte StartPos,byte Nums,int Password)
标签擦除某个内存数据,将所选择的内存数据全部设置为0.
byte[] EPC:要操作的电子标签的EPC.
byte MemType: 内存类型,用户区,EPC区,TID区,保留区中的一个.
byte StartPos:起始地址,字节为单位,但必须是2的倍数.
byte Nums:要擦除的字节数,必须是2的倍数.
int Password: 读写的密码,默认为0.
int rt= rfidreader.G2. YW_G2_ Earse (EPC, rfidreader.G2. MEMBANK_USER,0,10,0);
if(rt<=0)return
2.8 int YW_G2_SetReadProtectedWithEPC(byte[] EPC,int Password)
设置标签读保护.
byte[] EPC:要操作的电子标签的EPC.
int Password: 读写的密码,默认为0.
int rt= rfidreader.G2.SetReadProtectedWithEPC (EPC, 0);
if(rt<=0)return
2.9 int YW_G2_SetEASAlert(byte[] EPC,int Password, byte EAS)
设置标签EAS报警
byte[] EPC:要操作的电子标签的EPC.
int Password: 读写的密码,默认为0.
byte EAS: EAS值.
int rt= rfidreader.G2.SetEASAlert(EPC, 0,0x50);
if(rt<=0)return
2.10 byte[] YW_G2_TestEASAlert()
获取标签EAS报警
byte[] EAS= rfidreader.G2.GetEASAlert();
if(EAS==0)return
2.11 int YW_G2_LockUser(byte[] EPC,int Password, byte UserAddr)
锁定用户区内存
byte[] EPC:要操作的电子标签的EPC.
int Password: 读写的密码,默认为0.
byte UserAddr: 用户区地址.
int rt= rfidreader.G2.LockUser (EPC, 0,10);
if(rt<=0)return
RFID读写器,SDK,IC卡读卡器,开发包,二次开发,智能卡读卡器,RFID读卡器,CPU卡读写器,读卡模块 微信扫一扫联系我们 |
1 |
RFID读写器产品手册下载 |
2 |
读写器开发SDK下载 |
3 |
WEB读卡器开发指南 |
4 |
Windows读卡器开发指南 |
5 |
Android读卡器开发指南 |
6 |
Wince读卡器开发指南 |
7 |
PLC读卡器开发指南 |
8 |
Linux读卡器开发指南 |
9 |
单片机读卡器开发指南 |
10 |
PCSC读卡器开发指南 |