J2ME - PC和Mobile之间的蓝牙串口通信

时间:2012-02-07 09:56:23

标签: vb.net java-me bluetooth

我正在尝试创建客户端服务器应用程序。我将使这个简单,以便基本的聊天应用程序。

我已经完成了这些教程:

服务器端:VB.Net
客户端:J2ME

使用我的应用程序:移动和PC应用程序都将监听消息(文本)。当从移动设备收到消息到我的电脑时,它将显示。就像那样相反。

在我的电脑上安装了诺基亚PC套件。我有N70和5230型号。因此,当我打开5230的蓝牙时,我的电脑会自动连接(诺基亚PC套件显示弹出窗口,表示我的手机已连接)。我的电脑配有蓝牙适配器。

当我连接手机并检查端口时,我发现COM7和COM8可用(COM7到COM10用于蓝牙串行通信)。因此,如果我使用其中一个端口供我使用,它是否会与诺基亚PC套件发生冲突?

我的意思是,PC套件是否也使用相同的端口(7& 8)与移动设备进行通信?如果我使用与诺基亚PC套件相同的端口,我的意思是丢失我的联系人和消息?

1 个答案:

答案 0 :(得分:1)

我建议不要使用虚拟COM端口,除非确实需要,而是使用蓝牙API。我的库32feet.NET提供了这样的API,因此可以使用如下的服务器代码。在我看来,尝试设置和使用COM端口更加强大......我们甚至在samples中提供了一个聊天程序。

Class MyConsts
  Shared ReadOnly MyServiceUuid As Guid _
    = New Guid("{00112233-4455-6677-8899-aabbccddeeff}")
End Class

  ...
  Dim serviceClass As Guid
  serviceClass = BluetoothService.SerialPort
  ' - or - etc
  ' serviceClass = MyConsts.MyServiceUuid
  '
  Dim lsnr As New BluetoothListener(serviceClass)
  lsnr.Start()


  ' Now accept new connections, perhaps using the thread pool to handle each
  Dim conn As New BluetoothClient = lsnr.AcceptBluetoothClient()
  Dim peerStream As Stream = conn.GetStream()
  ...

  ' etc
  conn As New BluetoothClient = lsnr.AcceptBluetoothClient()
  peerStream As Stream = conn.GetStream()
  ...