Archived

This forum has been archived. Please start a new discussion on GitHub.

Android sending udp datagram by multicast

Hello I am developing an android application that must communicate with other devices. I'm having problems sending UDP datagrams to a multicast address.
I've tried multiple cases.
If the address is not multicast the android application runs correctly.
If I run my code in a java application it works with any multicast address.
But if I run the android application with a multicast address I receive an Ice.Socket.Exception when run the method generated from the definition of the slice.

I'm using the Ice version 3.5.1

Do I have to do something else? Do I have to give a special permission in the manifest?

Best regards.

José María Sánchez.

Comments

  • benoit
    benoit Rennes, France
    Hi José,

    Sorry, multicast is currently not supported with the Android port. The Android java.nio.channels.DatagramChannel class doesn't implement the java.no.channels.MulticastChannel interface introduced with Java 7 (contrary to the JDK DatagramChannel class which implements it). It's possible we could support it some other ways but this would require additional investigations. Please contact us at info@zeroc.com if you have a commercial interest in this feature.

    Cheers,
    Benoit.
  • Hi,

    I will develop a similar application with the Ice Touch SDK, exists the same problem for iOS SDK?

    Best regards,
  • benoit
    benoit Rennes, France
    Hi,

    Ice Touch supports multicast. You can for example try it out with the Ice Touch 3.6 hello demo which allows using the IceDiscovery plugin to discover an IceDiscovery hello server with multicast.

    We'll look into adding Android support for multicast in Ice 3.7.

    Cheers,
    Benoit.