【问题标题】:Unity's Master Server on local WiFi with Android's Mobile Hotspot带有 Android 移动热点的本地 WiFi 上的 Unity 主服务器
【发布时间】:2014-12-24 03:24:13
【问题描述】:

我试图让我的 Unity 构建的 Android 游戏在一个实例是 Android 热点模式下的服务器时运行,并让其他处于客户端模式的实例连接到服务器,同时也连接到该设备的热点。我正在使用 Unity 的主服务器框架。游戏必须在本地 WiFi 上运行,不能上网再回来。

当所有设备都连接到路由器时,游戏运行良好(一个构建作为服务器运行,其他构建作为客户端连接到它)。但是,当服务器处于热点模式时,客户端即使已连接也无法看到服务器。当连接到热点时,它们似乎也无法看到对方。

我是否缺少某种简单的设置,或者可能是某种阻止发现的防火墙?在这一点上,任何类型的线索或见解都会有所帮助。

我正在监听 25000 端口,以防万一。

谢谢!

【问题讨论】:

  • 我尝试用 MiFi 设备进行测试,结果相同,客户端和服务器即使连接到同一个网络也看不到对方。这是因为 Unity 的网络框架吗?我怎样才能度过难关?
  • 我从端口 25000 更改为端口 10001 并在 MiFi 设备上建立连接。但是当我把我的手机变成热点时,它仍然不起作用。有没有办法在我的手机上打开这样的端口?这甚至是一个好的解决方案吗?
  • 好的,我尝试了端口 0、80、8080、1025 和 49152。没有运气。所以我认为这意味着我要么需要找到一种在不使用 3rd 方应用程序的情况下打开热点端口的方法,要么通过在引擎之外构建自己的代码来解决 Unity 的服务器代码。

标签: android unity3d android-wifi multiplayer personal-hotspot


【解决方案1】:

在每台设备上成功 ping 通 Unity 的主服务器后,我决定放弃主服务器,直接使用已知的 IP 地址和端口进行连接。这似乎暂时有效。

编辑:一个更优雅的解决方案是这样的http://www.gamasutra.com/blogs/DarrelCusey/20130307/188088/Server_Discovery_in_Unity_401.php

【讨论】:

    猜你喜欢
    • 2014-06-17
    • 2014-02-06
    • 2021-06-04
    • 2019-04-11
    • 2018-02-26
    • 2015-01-07
    • 2016-02-16
    • 2013-01-24
    • 2018-05-23
    相关资源
    最近更新 更多