Android< - >蓝牙< - > J2ME连接问题

时间:2011-10-03 23:12:57

标签: android debugging java-me bluetooth connection

我正在尝试使用Android的Samsung Galaxy Ace通过蓝牙与诺基亚N95进行通信。 我已经为J2ME端编写了一个应用程序,它使用2个symbian设备进行了很好的通信。 我还创建了一个Android版本,可以在Android设备之间进行良好的通信。 启动从J2ME到Android的连接也可以。 创建从Android到J2ME的连接给我带来了问题。

关注问题:第一次连接尝试使用createRfcommSocketToServiceRecord失败。然后我尝试使用反射的解决方法和createRfcommSocket方法来通道1,然后是2,然后是3,然后是4,如果它们分别失败的话。有一次我会有一个连接,我可以发送数据,但是当我尝试使用InputStream.read()时,它只是挂起,所以我认为J2ME中的连接在某种程度上不会通过管道连接到我的应用程序。

所以我创建了测试应用程序以查看小规模的错误。 N95设置一个加密和验证的UUID监听器,Android应用程序使用createRfcommSocketToServiceRecord创建连接。这有效! 我还可以运行真正的Android应用程序并将消息发送到N95的测试应用程序。根据这一经验,我得出的结论是,错误必须存在于J2ME版本中。

我想知道是否有人有关于如何进行调试的提示。 我目前正在评论代码,构建,将应用程序发送到手机,安装,测试,重复。 这非常疲惫,而且速度很慢,但我没有其他选择来测试它。 我也很感激为什么createRfcommSocket连接没有回复。我是否必须在J2ME端注册一些东西? 谢谢你的时间。

1 个答案:

答案 0 :(得分:0)

我已经通过详细检查我的代码解决了这个问题,并发现我错误地实现了我的自定义输出流。

out.write(x);
out.write(y);
out.flush();

流不会在j2me中自动刷新