当前位置: 首页 > news >正文

局域网通信时,解决在一些设备上NsdManager发现服务失败的问题

1. 背景:

Google 提供了NsdManager Api 以支持局域网发现服务,但是在实际中,一些个别型号手机设备上,NsdManager 发现服务失败,mdns 解析失败,找不到对应的服务名称,进而无法解析出本地网络内的host 和 端口。

可能存在的问题原因:

1.1 设备兼容性问题
  • 硬件限制:一些低端或较老的设备可能不完全支持 mDNS,导致服务发现失败。
  • 定制系统:部分手机制造商对 Android 系统进行深度定制,可能削弱或禁用了某些网络功能,影响 mDNS 的正常工作。
1.2 mDNS 解析问题
  • mDNS 数据包丢失:在网络负载较高或信号较差的情况下,mDNS 数据包可能丢失,导致无法解析服务。
  • 重复或冲突服务:如果网络中有多个设备发布了相同的服务名称,可能会导致 mDNS 服务解析失败

2. 如何解决?用NsdManager + 采用udp 广播的形式解决

NsdManager Api + UDP 广播发现服务结合使用解决此问题, NsdManager 可参考Google 官方文档或者我之前写的文档,本篇主要介绍本地UDP广播如何发现本地服务host 及 port。

2.1  配置权限:

    <uses-permission andr

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • easyPOI生成的excel添加水印
  • 虚拟现实辅助工程技术助力多学科协同评估
  • 大模型技术开发与应用
  • net、udp、tcp
  • 设计模式之生成器方法
  • vue点击导航滚动到相应位置,鼠标滚动到相应位置对应导航名称高亮
  • Golang | Leetcode Golang题解之第390题消除游戏
  • 一款支持身份证、驾驶证、护照、车牌等证件识别插件
  • 【iOS】属性关键字
  • 爬取知乎回答
  • Unity(2022.3.41LTS) - 着色器
  • vulnhub靶场-DC2
  • 使用Blender云渲染的好处是什么?
  • 滚雪球学MyBatis-Plus(04):基础配置
  • 如何用Java SpringBoot打造助农捐赠平台?2025年25届毕业生必看+最新设计实现攻略!
  • ----------
  • [NodeJS] 关于Buffer
  • 【402天】跃迁之路——程序员高效学习方法论探索系列(实验阶段159-2018.03.14)...
  • 002-读书笔记-JavaScript高级程序设计 在HTML中使用JavaScript
  • 2019.2.20 c++ 知识梳理
  • 2019年如何成为全栈工程师?
  • Angular 响应式表单 基础例子
  • C# 免费离线人脸识别 2.0 Demo
  • centos安装java运行环境jdk+tomcat
  • java第三方包学习之lombok
  • Mithril.js 入门介绍
  • Promise面试题,控制异步流程
  • spring + angular 实现导出excel
  • SpringBoot几种定时任务的实现方式
  • Traffic-Sign Detection and Classification in the Wild 论文笔记
  • Unix命令
  • Webpack4 学习笔记 - 01:webpack的安装和简单配置
  • 对超线程几个不同角度的解释
  • 分布式事物理论与实践
  • 给新手的新浪微博 SDK 集成教程【一】
  • 回顾2016
  • 可能是历史上最全的CC0版权可以免费商用的图片网站
  • 配置 PM2 实现代码自动发布
  • 实现简单的正则表达式引擎
  • 详解移动APP与web APP的区别
  • 消息队列系列二(IOT中消息队列的应用)
  • d²y/dx²; 偏导数问题 请问f1 f2是什么意思
  • 国内唯一,阿里云入选全球区块链云服务报告,领先AWS、Google ...
  • 交换综合实验一
  • (done) ROC曲线 和 AUC值 分别是什么?
  • (SpringBoot)第二章:Spring创建和使用
  • (三)uboot源码分析
  • (转)Android学习系列(31)--App自动化之使用Ant编译项目多渠道打包
  • (转)eclipse内存溢出设置 -Xms212m -Xmx804m -XX:PermSize=250M -XX:MaxPermSize=356m
  • (转)Mysql的优化设置
  • (转)Sql Server 保留几位小数的两种做法
  • (转)关于pipe()的详细解析
  • .a文件和.so文件
  • .mkp勒索病毒解密方法|勒索病毒解决|勒索病毒恢复|数据库修复
  • .NET Core 中的路径问题