Usb Host Check.apk对设备进行检查,并开启usb host功能。(需要root)USBRFIDReader.apk之后,先不打开。插入读卡器后,安卓设备会有弹窗提示,点击确定便可自动打开应用。类com.syc.usbrfidreader.ICReaderApi即为读卡器的api类。源码中大部分代码为自动生成,api使用范例可以参考类com.icreader.usbrfidreader.ItemDetailFragment
com.syc.usbrfidreader源码复制到工程源码目录下。导入包
import com.syc.usbrfidreader;
修改AndroidManifest.xml文件(可参考Android官方文档)
<manifest ...>
<uses-feature android:name="android.hardware.usb.host" />
<uses-sdk android:minSdkVersion="12" />
...
<application>
<activity ...>
...
<intent-filter>
<action android:name="android.hardware.usb.action.USB_DEVICE_ATTACHED" />
</intent-filter>
<meta-data android:name="android.hardware.usb.action.USB_DEVICE_ATTACHED"
android:resource="@xml/device_filter" />
</activity>
</application>
添加文件res/xml/device_filter.xml,设备的VID为0xffff(65535),PID为0x35(53)
<?xml version="1.0" encoding="utf-8"?>
<resources>
<usb-device vendor-id="65535" product-id="53"/>
</resources>
在Activity里获取设备
UsbDevice device = (UsbDevice) intent.getParcelableExtra(UsbManager.EXTRA_DEVICE);
UsbManager manager = (UsbManager) this.getSystemService(this.USB_SERVICE);
将初始化ICReaderApi对像
ICReaderApi api = new ICReaderApi(device, manager);
使用ICReaderApi里面的函数,比如设置序列号
api.API_SetSerNum(newValue, buffer);