news 2026/4/16 21:32:40

Unity 实现LanDiscovery网络发现(兼容android,NGO)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Unity 实现LanDiscovery网络发现(兼容android,NGO)

文章目录

    • 前言
    • 1. 核心痛点:为什么 Android 搜不到 PC 服务器?
    • 2. 解决方案:SimpleDiscovery 核心逻辑
    • 3. 如何接入 Unity Netcode for GameObjects (NGO)?
    • 4. 防火墙与网络设置
    • 5.android 权限开启
    • 5.SimpleDiscovery代码示例

前言

在开发 Unity 多人游戏(如 Pico/Quest VR 协作)时,局域网发现(LAN Discovery) 是提升用户体验的关键。然而,官方的 Unity.Netcode.Transports.Discovery 在 Android 平台上经常遇到“搜不到、连不上”的顽疾。

在经历了对 Mirror、LiteNetLib 的深度剖析及多次“防火墙玄学”调试后,我总结了一套不依赖任何重型框架、针对 Android/VR 深度优化的轻量级 UDP 服务发现方案:SimpleDiscovery。

1. 核心痛点:为什么 Android 搜不到 PC 服务器?

在开发过程中,我发现导致失败的通常不是逻辑代码,而是以下三个硬件与系统级的“坑”:

MulticastLock 限制:Android 系统为了省电,默认会拦截未知的 UDP 广播包。不申请“组播锁”,App 就处于“耳聋”状态。

防火墙策略:Windows 防火墙有时会处于一种“非对称拦截”状态,关闭防火墙反而可能导致底层路由策略失效,开启并正确配置入站规则才是王道。

多网卡干扰:PC 上若安装了虚拟机(VMWare/VirtualBox),广播包极易发往虚拟网卡,导致真实的 Wi-Fi 客户端收不到数据。

2. 解决方案:SimpleDiscovery 核心逻辑

为了解决上述问题,本方案在 SimpleDiscovery 类中集成了以下工业级特性:

A. 跨平

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/16 19:09:55

智能工厂订单查询系统

智能工厂订单查询系统设计 第一章 绪论 传统工厂订单查询依赖人工台账、线下沟通或单一终端查询,存在数据更新滞后、查询效率低、权限管理混乱、信息追溯难等问题,难以适配智能制造背景下多角色、多场景的订单管理需求。智能工厂订单查询系统基于工业互联…

作者头像 李华
网站建设 2026/4/16 10:45:13

【四个场景测试】源文件编码UTF-8 BOM

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 一、关键前置知识1. UTF-8 BOM 定义2. MSVC 源文件解码优先级(官方既定规则)3. 固定测试环境 二、逐场景解析(对应你的4组测试&a…

作者头像 李华
网站建设 2026/4/16 10:46:48

船员适任证书材料处理全攻略:照片规格、材料压缩与上传规范

船员适任证书是船员上船任职、通过海事考核、合法履职的核心资格证件,在初次申领、到期换证、职务晋升、证书补发时,证件照合规、材料格式标准、文件大小精准是审核通过的关键。很多船员因照片尺寸不符、PDF过大、排版错乱、印章模糊被系统驳回&#xff…

作者头像 李华
网站建设 2026/4/16 10:46:29

HarmonyOS 游戏中,被“允许”的异常

子玥酱 (掘金 / 知乎 / CSDN / 简书 同名) 大家好,我是 子玥酱,一名长期深耕在一线的前端程序媛 👩‍💻。曾就职于多家知名互联网大厂,目前在某国企负责前端软件研发相关工作,主要聚…

作者头像 李华
网站建设 2026/4/16 10:46:25

西门子PLC1200博途V16制药厂生物发酵系统程序画面例程分享

西门子PLC1200博途V16程序画面例程,具体项目工艺为制药厂生物发酵系统,程序内有报警,模拟量标定处理,温度PID,称重仪表USS通讯和基本的各种数字量控制,硬件组成包含称重仪表通讯及和ET200SP模块通讯组态。 …

作者头像 李华