Android作为主机不工作,Unity LLAPI

时间:2016-09-21 09:28:19

标签: c# android unity3d

所以我会尽力发布这个。我之前在团结论坛上问过这个问题,但我还没有找到答案,如果你需要的话,这里是link

我有一个服务器端广播的工作演示,客户端接收消息解析并使用该信息连接到服务器。

 NetworkTransport.Init();
 NetworkTransport.AddHost(defaultTopology, PORT)
 NetworkTransport.StartBroadcastDiscovery(id,broadcastport,..,..)
 NetworkTransport.Receive(..,..)
 NetworkTransport.Connect(..,..)

等。如果你愿意的话,我可以继续进一步详细介绍代码,但就PC的工作而言,我认为代码很好。

当我尝试使用 PC作为服务器,Android作为客户端时,如果Android设备充当客户端,他不接收来自服务器的广播但我可以手动连接(i知道我的本地机器的IP),我可以发送和接收消息。(这是好的,除了广播问题很好修复)

如果 Android充当服务器和PC客户端,则PC会接收广播,但无法自动或手动连接到Android。

我用2个Androids进行了测试,结果也不好。 客户端没有收到广播,如果我尝试手动连接,服务器没有收到连接事件。主要目标是使用2个机器人。

我搜索了网络和Unity的问题,但我发现有些人在谈论Android Manifest,但没有说明究竟要做什么。如果你可以指出我正确的方向,我会赞成。

也许Android 6权限与此有关吗?

我个人认为android无法接受任何直到被连接,所以当他充当客户端他不接收广播但可以连接然后工作正常,但作为服务器他不能接收连接。

也许在Android端口上有什么关系?我通常使用25001。

使用Unity 5.3.5f1

感谢和抱歉我的英语不好。

修改 我改为Unity 5.4来检查Android 6的permisions并且也没有工作。 如果你想尝试,你有一个演示here 是与另一个项目的隔离,所以也许你找到了代理人和其他东西。

1 个答案:

答案 0 :(得分:0)

是的,它确实是Android Manifest。我认为没有其他原因导致这种情况无效。在Android 6.0上更改了方法权限查询。您必须下载Unity 5.4才能解决此问题。