【问题标题】:Nexus 4 can't receive multicast from public addressesNexus 4 无法从公共地址接收多播
【发布时间】:2013-03-08 22:37:32
【问题描述】:

我们正在将目前在 IOS 上运行的产品移植到 Android 平台,该平台主要接收多播音频数据包并播放它们。到目前为止,我们测试过的每台 Android 设备都可以正常工作(HTC 设备、三星等)。但是,我们永远不会在 Nexus 4 上收到网络流量!

我们的应用程序在 20118 端口打开了一个 UDP 端口,并在 239.192.0.11 加入了多播组。流量永远不会到达 Nexus 4。

只是为了好玩,我编写了应用程序来监听 mDNS 多播地址和端口,即端口 5353 和多播组 224.0.0.251。网络总是围绕 mDNS 流量进行压缩,所以我想我会拿起一个数据包。

成功了!

所以我的应用完全能够在 Nexus 4 上接收多播流量,只要它是 mDNS 流量。它不会在 239.192.0.11 和端口 20118 接收任何多播流量(保证它存在,因为其他设备同时接收它就好了)。

Nexus 4 中是否有某种防火墙?还是有一块地址被禁用?

有人对此设备有其他多播地址问题吗?

只是为了比较,它可以在运行 4.2.2 的 Nexus 7 平板电脑上运行。只是不是 Nexus 4,还有 4.2.2(也没有早期版本的 Jelly Bean)。

感谢您的帮助,

查克

【问题讨论】:

    标签: android android-wifi android-networking nexus-4


    【解决方案1】:

    在 Nexus 4 上似乎只是禁用了多播:

    http://code.google.com/p/android/issues/detail?id=51195

    但这并不能解释为什么 mDNS 有效。也许他们被内核特别对待?

    【讨论】:

      猜你喜欢
      • 2022-01-25
      • 2011-11-03
      • 2011-08-02
      • 1970-01-01
      • 2020-12-10
      • 2013-09-08
      • 1970-01-01
      • 2021-12-22
      • 1970-01-01
      相关资源
      最近更新 更多