Android ICS上的蓝牙连接无法实现

我正在编写一个应用程序,它将平板电脑的字节代码发送到μ控制器.在联想A1(Androi 2.3)和三星Galaxy Tab 7 Plus N( Android 3.2)上一切正常.现在我遇到了新的三星Galaxy Tab 2(Android 4.0)的问题.

我能够配对蓝牙天线(连接到μ控制器并通过串行协议进行通信).当我启动应用程序时,我再次被要求输入密码并配对.输入配对密码后,我的主要布局可见,但未建立连接.

日食中的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

因此,当我在网上搜索时,我发现了一些有类似问题但没有解决方案的人.有人知道这个问题吗?

也许它是天线和Android 4.0之间的兼容性问题.我不认为错误是在我的代码中,因为我说相同的代码完全在旧的Android版本上运行.

解决方法

好的,我发现了问题所在.我不确定这只是一个三星问题还是Android ICS问题.

我像往常一样通过使用(获取Socket)尝试连接到天线:

clientSocket = device.createRfcommSocketToServiceRecord(MY_UUID);

好吧,它似乎无法解决我的天线和平板电脑设置,所以我试过:

clientSocket = device.createInsecureRfcommSocketToServiceRecord(MY_UUID);

这确实有效.第一个选项强制系统取消配对天线,然后再次要求配对.

以上是来客网为你收集整理的Android ICS上的蓝牙连接无法实现全部内容,希望文章能够帮你解决Android ICS上的蓝牙连接无法实现所遇到的程序开发问题。

如果觉得来客网网站内容还不错,欢迎将来客网网站推荐给程序员好友。