Android ICS上的蓝牙连接无法实现
2019年12月23日
作者:佚名
我正在编写一个应用程序,它将平板电脑的字节代码发送到μ控制器.在联想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上的蓝牙连接无法实现所遇到的程序开发问题。
如果觉得来客网网站内容还不错,欢迎将来客网网站推荐给程序员好友。