Are you sure you want to delete the question?

If your question is resolved, you may close it.

Leaving a resolved question undeleted may help others!

We hope you find it useful!

Android 汎用USBデバイス通信

解決したいこと

Androidをホストとして、汎用USBデバイスにデータを送った際の
汎用デバイスからのレスポンスを監視したい。

usb-serial-for-androidは使用していません。

例)
Javaで開発を行っています。
Android開発は初心者です。

現在汎用デバイスにデータを送り挙動を制御する事は出来ています。

発生している問題・エラー

エラーではなく、方法が分かりません。

例)

特に無し

または、問題・エラーが起きている画像をここにドラッグアンドドロップ

該当するソースコード

ソースコードを入力

例)

特に無し

自分で試したこと

いろいろと調べてはみましたが、データを送る方法については出てきましたが
受信する方法をなかなか見つける事が出来ませんでした。
よろしくお願いいたします。

0 likes

1Answer

Androidデバイスをホストとして使用するとのことですので、Android USB Host APIを利用します。
リファレンスは以下です。
https://developer.android.com/guide/topics/connectivity/usb/host?hl=ja

データの送受信はUsbDeviceConnectionクラスを利用します。
https://developer.android.com/reference/android/hardware/usb/UsbDeviceConnection?hl=ja
通常のデータ転送ですとbulkTransferメソッドを利用します。
bulkTransferの引数に入力(受信用)のエンドポイントを指定し、メソッドを実行します。
メソッドの戻り値を確認し通信に成功している場合、bulkTransferの第3引数のbyte配列に受信したデータが入っています。

データ受信タイミング(bulkTransfer実行タイミング)はポーリングするなりイベント監視するなりアプリケーション側で制御する必要があります。

この辺が参考になる気がします。
http://blog.livedoor.jp/jun_dime/archives/51720766.html

0Like

Your answer might help someone💌