2

現在 IOS で実行されている製品を Android プラットフォームに移植しています。これは、基本的にマルチキャスト オーディオ パケットを取り込んで再生します。これまでにテストしたすべての Android デバイス (HTC デバイス、Samsung など) は正常に動作します。ただし、Nexus 4 でネットワーク トラフィックを受信することはありません。

このアプリケーションはポート 20118 で UDP ポートを開き、239.192.0.11 でマルチキャスト グループに参加します。Nexus 4 にトラフィックが到着しません。

ふざけて、mDNS マルチキャスト アドレスとポート (ポート 5353 とマルチキャスト グループ 224.0.0.251) をリッスンするようにアプリをコーディングしました。ネットワークは常に mDNS トラフィックを高速で処理するため、パケットを受信することにしました。

出来た!

したがって、私のアプリは、mDNS トラフィックである限り、Nexus 4 でマルチキャスト トラフィックを完全に受信できます。239.192.0.11 およびポート 20118 では、マルチキャスト トラフィックを受信しません (他のデバイスが同時に正常に受信しているため、存在することが保証されています)。

Nexus 4 に何らかのファイアウォールはありますか? または、無効になっているアドレスのブロックはありますか?

このデバイスで他のマルチキャスト アドレスの問題を抱えている人はいますか?

比較のために、4.2.2 を実行している Nexus 7 タブレットで動作します。Nexus 4だけでなく、4.2.2でもありません(以前のバージョンのJelly Beanでもありませんでした)。

助けてくれてありがとう、

チャック

4

1 に答える 1

0

Nexus 4 ではマルチキャストが単に無効になっているようです。

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

ただし、mDNS が機能する理由は説明できません。多分それらはカーネルによって特別に扱われていますか?

于 2013-07-02T13:50:09.093 に答える