Java 飞天br301蓝牙读卡器停止工作

Java 飞天br301蓝牙读卡器停止工作,java,android,bluetooth,smartcard,android-bluetooth,Java,Android,Bluetooth,Smartcard,Android Bluetooth,我一直在使用蓝牙智能卡读卡器(飞天br301),但它似乎突然停止了工作。 我认为这可能是我的读卡器的问题,但我有两个用于开发,并且都存在相同的问题,即使飞天的演示应用程序代码也可以重复。演示开始时是这样的: BluetoothSocket mBlueToothSocket = mBlueToothDevice.createInsecureRfcommSocketToServiceRecord(MY_UUID); mBlueToothSocket.connect(); mInput = mBlue

我一直在使用蓝牙智能卡读卡器(飞天br301),但它似乎突然停止了工作。
我认为这可能是我的读卡器的问题,但我有两个用于开发,并且都存在相同的问题,即使飞天的演示应用程序代码也可以重复。演示开始时是这样的:

BluetoothSocket mBlueToothSocket = mBlueToothDevice.createInsecureRfcommSocketToServiceRecord(MY_UUID);
mBlueToothSocket.connect();
mInput = mBlueToothSocket.getInputStream();
mOutput = mBlueToothSocket.getOutputStream();
mReader = new ft_reader(mInput, mOutput);
这部分按预期工作,没有任何问题。但是,当我打电话时:

mReader.PowerOn();  
它只是
内部卡.PowerOn()调用的包装,它返回
-2
,这是我(和文档)未知的返回代码


另外,虽然没有在我的应用程序上使用,但仅在飞天的演示上,尝试通过
内部卡为设备注册
处理程序
。registerCardStatusMonitoring(处理程序)
还返回未知错误代码:
-1

TL;博士
我的蓝牙设备创建了一个套接字并连接到它而没有问题,为什么它不能正常工作,甚至不能注册一个处理程序呢?

这是一个硬件、驱动程序或系统问题。我们在这里不排除这个问题。将其转到ServerFault或SuperUser。

调用PowerOn()时,需要将智能卡插入读卡器中。此方法应仅为卡供电并读取ATR,因此,如果当前卡无法使用此方法,则应尝试使用其他卡。

据我所知,PowerOn()方法应仅为卡供电并读取ATR。你能试着换一张卡吗?这的确是一张与我的读卡器不兼容的卡,它也不能通过USB插入PC。奇怪的是,在这种情况下,它似乎没有给出适当的错误(我希望
卡不存在
状态代码)。将不同的卡片建议编辑到您的答案中,我会将其标记为已接受。这应该是评论,而不是答案。