We are porting a product currently running on IOS to the Android platform, which basically takes in multicast audio packets and plays them. Every Android device we've tested so far works fine (HTC devices, Samsung, etc). However, we never receive network traffic on the Nexus 4, ever!
Our application opens up a UDP port at port 20118, and joins the multicast group at 239.192.0.11. Traffic never arrives on the Nexus 4.
Just for fun, I coded the app to listen on the mDNS multicast address and port, which are port 5353 and multicast group 224.0.0.251. Networks always zip around mDNS traffic, so I figured I'd pick up a packet.
IT WORKED!
So my app is perfectly capable of receiving multicast traffic on the Nexus 4, as long as it's mDNS traffic. It will not receive any multicast traffic (guaranteed it exists, as other devices are concurrently receiving it just fine) at 239.192.0.11 and port 20118.
Is there some kind of firewall in the Nexus 4? Or is there a block of addresses that are disabled?
Anybody out there have other multicast address problems with this device?
Just for comparison, it DOES work on a Nexus 7 tablet running 4.2.2. Just not the Nexus 4, also with 4.2.2 (didn't with prior versions of Jelly Bean either).
Thanks for any help,
Chuck