11
ByteBuffer byteBuffer = ByteBuffer.allocate(9);;    
UsbRequest request = new UsbRequest();
request.initialize(mConnection,mEndpointIntr);
boolean b = request.queue(byteBuffer, 9);
Log.d(TAG, "start the request wait");
UsbRequest ur = mConnection.requestWait();

AndroidUSB割り込みを使いたい。上記のコードは、自分のUSBボードからデータを受信するためのスレッドです。しかしUsbRequest ur = mConnection.requestWait();、関数を呼び出そうとしても返されない場合は、常に。に遭遇しrequestWait()ます。なぜこれが起こるのですか?

4

2 に答える 2

0

MK802 に接続された 2 つのエンドポイント (IN と OUT) を持つ私自身の USB HID デバイスで、同じ問題が発生しました (要求をキューに入れると false が返されました)。私は false で呼び出された claimInterface を持っていました。次の設定が役立ちました。データは問題なく受信できます。

c.claimInterface(device.getInterface(0), true);
于 2013-04-21T22:03:37.630 に答える