タブレットからμコントローラーにバイトコードを送るアプリを書いています。Lenovo A1 (Androi 2.3) と Samsung Galaxy Tab 7 Plus N (Android 3.2) ではすべて問題なく動作しました。現在、新しい Samsung Galaxy Tab 2 (Android 4.0) で問題が発生しています。
Bluetooth アンテナ (μ-controller に接続され、シリアル プロトコルで通信する) とペアリングできます。アプリを起動すると、パスワードの入力とペアリングを再度求められます。ペアリング パスワードを入力すると、メイン レイアウトが表示されますが、接続が確立されません。
日食のLogCatは私に伝えます:
06-19 16:00:20.656: V/BluetoothSocket.cpp(3189): availableNative
06-19 16:00:20.664: V/BluetoothSocket.cpp(3189): abortNative
06-19 16:00:20.664: V/BluetoothSocket.cpp(3189): ...asocket_abort(49) complete
06-19 16:00:20.664: I/ActivityManager(185): No longer want com.google.android.partnersetup (pid 3220): hidden #16
06-19 16:00:20.671: V/BluetoothSocket.cpp(3189): availableNative
06-19 16:00:20.671: V/BluetoothSocket.cpp(3189): destroyNative
06-19 16:00:20.671: V/BluetoothSocket.cpp(3189): ...asocket_destroy(49) complete
06-19 16:00:20.679: D/KeyguardViewMediator(185): setHidden false
06-19 16:00:20.679: W/System.err(3189): java.io.IOException: socket closed
06-19 16:00:20.679: W/System.err(3189): at android.bluetooth.BluetoothSocket.available(BluetoothSocket.java:370)
06-19 16:00:20.679: W/System.err(3189): at android.bluetooth.BluetoothInputStream.available(BluetoothInputStream.java:40)
06-19 16:00:20.679: W/System.err(3189): at java.io.BufferedInputStream.available(BufferedInputStream.java:114)
06-19 16:00:20.687: W/System.err(3189): at ebs.alphadidact.control.ReceiveThread.run(ReceiveThread.java:79)
さらに、LogCat は何千回もメッセージを受け取ります。
V/BluetoothSocket.cpp(3189): availableNative
それで、ウェブで検索したところ、同様の問題を抱えているが解決策がない人が何人か見つかりました。誰かがこの問題について何か知っていますか?
多分それはアンテナとアンドロイド4.0の間の互換性の問題です. 私が言ったように、同じコードが古いAndroidバージョンで完全に実行されているため、エラーが私のコードにあるとは思いません。