本地网络上的 Mobile Phonegap 应用程序

Mobile Phonegap applications on a local network

我使用 html5 和 websockets 创建了一个游戏,可以同时在 pc 和移动设备上玩(也可以玩多个移动设备):

游戏有一个舞台 - PC 或平板设备。

还有几位玩家 — 其他移动设备

舞台和玩家之间的当前连接是一个数字(舞台显示一个数字,玩家可以通过该数字加入),但是,我正在寻找一种方式,让玩家可以通过在与舞台相同的本地网络中 - 意味着通过本地网络自动发现。

我一直在搜索 WebRTC 和其他 p2p 解决方案,但我找不到任何东西。还有其他我可以使用还是完全不可能的东西?

没有javascript 从浏览器内部访问本地 IP 地址的唯一方法。似乎确实有很多 cordova/phonegap 插件声称可以做到这一点:

http://plugreg.com/plugin/weconstudio-it/phonegap-plugin-ipaddress https://github.com/jcesarmobile/my-phonegap-plugins/tree/master/iOS/NetworkInterfacesPlugin

以及上面评论中指出的那个。看起来是 android 或 IOS。有人应该写一个对两者都有效的!

如果是我。我可能会在舞台上使用浏览器 headers:REMOTE_ADDR、HTTP_CLIENT_IP 等。这样做有一些好处:http://roshanbh.com.np/2007/12/getting-real-ip-address-in-php.html

在本地网络中,您将能够获取每台设备的真实 IP 地址。专用网络属于特定地址 space:

10.0.0.0        -   10.255.255.255
172.16.0.0      -   172.31.255.255
192.168.0.0     -   192.168.255.255

因此您的舞台将知道其客户端何时通过 LAN 连接到它。这会让你到达你需要去的地方吗?

您可以试试这个支持 Android、Blackberry 10、iOS 和 Windows 设备的 cordova-plugin-networkinterface 插件。