0

私はGalaxyS2に接続するUSB​​デバイス(指紋リーダー)を持っており(USBホストモードをサポートしているため)、最新のAndroidUSBAPIを利用する自分のアプリで使用しますhttp://developer.android.com/reference/ android / hardware / usb / UsbDevice.html

リーダーを電話機に接続すると、「不明なUSB周辺機器」と表示され、リーダーの電源が入っているので、電源の問題はありません。リーダーのLinuxドライバーのソースコードを持っているので、必要に応じてARMアーキテクチャ用にコンパイルできます。

このドライバーをAndroidカーネルに統合するにはどうすればよいですか(Linuxに基づいているため、可能であれば)?? 別のモジュールを作成することは可能ですか?root権限は絶対に必要ですか?

またはもっと簡単に、USB APIを介して周辺機器のタイプを判別できますか?

4

3 に答える 3

0

APIとの非互換性がある可能性があることを私は知っています。しかし、GalaxyはUSBホストモードをネイティブにサポートしているので、おそらく問題はありません...

ただし、別のモジュールを使用したカーネルへのドライバーの統合に関して、手順を説明するガイドはありますか?

于 2011-08-25T07:59:26.893 に答える
0

「fingerprintdriver.ko」を取得するには、Linux ドライバーをモジュールとしてコンパイルする必要があります。ARM クロス コンパイラを使用して、Linux 2.6.35 (バージョンは Android のバージョンによって異なります) ドライバーであるかのように動作します。さて、私はブログで、Android ツール キットから ARM コンパイラを取得する必要があることを見てきましたが、これには小さな違いがあり、時々違いが生じることがありますが、Android で提供されているものを使用しているため、自分で試したことはありません。開発キット。次に、コマンド「insmod /modules/fingerprintdriver.ko」でインストールします。起動時に自動的にインストールされるように、「init.rc」ファイルにも配置する必要があります。ただし、ドライバーによっては、Android API で認識されない (ほとんどの場合認識されない) 場合があります。それが必要な場合は、デバイスを次のように表示するコードを記述する必要があります。「センサー」。その後、Android プログラマーのコミュニティ全体がデバイスを利用できるようになります。Android アプリ プログラマー コミュニティ全体ではなく、自分の目的のためだけに使用したい場合は、USB API を介して使用することをお勧めします。あなたの仕事ははるかに少なくなります。

ちょっとした情報が少しでもお役に立てれば幸いです。

于 2011-12-01T13:43:02.807 に答える
0

ここで統合のガイドを見つけることができます: http://android.serverbox.ch/?p=285

この例では、Honeycomb 用の ftdi ドライバーをコンパイルする方法を示していますが、これで簡単に始めることができます。

于 2011-11-26T19:07:37.323 に答える