BlueCove を調査

とある Bluetooth デバイスを検討しているのですが、これまでBluetoothを使うといえばiOSでばかりいじってました。もちろん、Androidでも簡単にできることはわかっているのですが、別のUSBデバイスと同時に使いたいので、できればPCかMacで接続したいわけです。C言語でプログラムすれば簡単につながることもわかっているのですが、Windows用、Linux用、Mac用とプログラムコードを準備したくありません。

調べてみたら、Java用のBlueCoveというOSSがありました。

JNIを使ってOSが持っているBluetoothのレイヤーにアクセスするようなのですが、このライブラリーはうまいことできていて、ネイティブインターフェースをDLLなどのファイルに分けず、JARの中に仕込んであるようです。なので、Windows、Mac共通のJARがあるのですが、これをダウンロードしてクラスパスに組み込むだけでアクセスできちゃいます。

最初、bluecove-2.1.0.jarを試したのですが、「ネイティブライブラリが見つからない」というエラーになりました。ネットで調べていたら、bluecove-2.1.1SNAPSHOT.jarというファイルがあり、こちらを試したら動きました。バグなのだそうです。

とりあえず今日は手元にあるBluetoothマウスのペアリングボタンを押したあとプログラムを起動し、startDiscoveryとstartSearchServiceを呼び出し、マウスのサービスを発見できるところまでやってみました。ラズパイにBluetoothのドングルつけて接続できたら、ラズパイでやりたいかな。

所望のデバイスが届いたら接続を試みようと思います。

広告

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト /  変更 )

Google フォト

Google アカウントを使ってコメントしています。 ログアウト /  変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト /  変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト /  変更 )

%s と連携中