我是Android和蓝牙的新手。我试图使用蓝牙的BNEP协议建立一个PANU和NAP(GN)相同的PAN网络。我的主要目的是让a设备进行NAP,这样它就可以连接到TCP,而微微网中的其他PANUs将与NAP中的设备进行交互。我可以使用Java反射来支持这一点。我使用android.bluetooth.BluetoothPan类作为连接的PAN。因此,我按照以下步骤来设置: a)我调用了BluetoothPan的构造函数并创建了实例。在onServiceConnected()处理程序接收配置文件值为5b时,可以成功地创建对象。设置后,我将setBluetoothTethering()设置为true,然后使用isTetheringOn()函数检查状态,状态为true
所以我认为现在这个应用程序会使设备像PANU一样工作吗?我说得对吗?如果不是,我还需要做什么?现在我的问题是如何使这个应用程序支持NAP?因为蓝牙绑定是开着的,所以它已经在小睡了吗?如果是这样的话,我是否可以看到IP或端口号分配给设备时,它是为国家行动计划。我找不到解决这个问题的办法。
我的主要意图是使一个服务器设备像一个小睡与一些IP。并利用PANU制作了一些客户端设备,现在基于IP的NAP,我可以在PANU端运行基于IP的服务发现和交互。
在此之前,我已经使用listenUsingRfcommWithServiceRecord() Server和listenUsingRfcommToServiceRecord()客户机在服务和客户端之间建立了通信,并在developer.android中引用了许多使用这种方法设置通信的引用。这是非常简单的方式来设置客户端-服务器通信,并使用SDP。我不想在这里用那个。
我只想通过BNEP
注意:在通过亚行调试后,我发现当它连接到蓝牙绑定时,所分配的IP可以通过“亚行外壳ip路由”看到,而在BT绑定中可以看到用于NAP的分配的IP。现在,如何获得这个IP是我的问题或下一个任务。
发布于 2016-03-01 11:06:41
在我设置了绑定setBluetoothTethering()并使用connect() apis建立PAN网络之后,我就能够设置PAN了。
之后,由于TCPIP通信已经开始,我检查了NetworkInterface并调用getHostAddress()来获取IP信息。
https://stackoverflow.com/questions/35714467
复制相似问题