1

I'm using UDP socket programming to send data from Android Device to Raspberry Pi3. I have created hot spot in raspberry pi manually and connecting android mobile to raspberry pi.I'm able send data in API level 19 using below code but if I use same code for API level 23 then its not working. Please any one help me on this....

DatagramSocket udpServerSocket= null;
    try
            {
                udpServerSocket = new DatagramSocket(4446);

            }
            catch (SocketException e) {
                e.printStackTrace();
            }

            byte [] sendResponse = String.valueOf(SendValue).getBytes();

            DatagramPacket sendPacket = null;
            try {

                sendPacket = new DatagramPacket(sendResponse, sendResponse.length, InetAddress.getByName("192.168.42.1"), 4446);

            } catch (UnknownHostException e) {
                e.printStackTrace();
            }
            if (udpServerSocket != null) {
                try {
                  udpServerSocket.send(sendPacket);
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }   



   logCat:
   12-07 09:33:48.038 12982-12982/com.lear.wifi_datatransfer W/System.err: Caused by: android.system.ErrnoException: bind failed: EADDRINUSE (Address already in use)
   12-07 09:33:48.039 12982-12982/com.lear.wifi_datatransfer W/System.err:     at libcore.io.Posix.bind(Native Method)
   12-07 09:33:48.039 12982-12982/com.lear.wifi_datatransfer W/System.err:     at libcore.io.ForwardingOs.bind(ForwardingOs.java:56)
   12-07 09:33:48.039 12982-12982/com.lear.wifi_datatransfer W/System.err:     at libcore.io.IoBridge.bind(IoBridge.java:97)
   12-07 09:33:48.039 12982-12982/com.lear.wifi_datatransfer W/System.err:  ... 62 more
   12-07 09:33:48.104 12982-12982/com.lear.wifi_datatransfer W/System.err: java.net.BindException: bind failed: EADDRINUSE (Address already in use)
   12-07 09:33:48.105 12982-12982/com.lear.wifi_datatransfer W/System.err:     at libcore.io.IoBridge.bind(IoBridge.java:99)
   12-07 09:33:48.105 12982-12982/com.lear.wifi_datatransfer W/System.err:     at java.net.PlainDatagramSocketImpl.bind(PlainDatagramSocketImpl.java:60)
   12-07 09:33:48.105 12982-12982/com.lear.wifi_datatransfer W/System.err:     at java.net.DatagramSocket.createSocket(DatagramSocket.java:159)
   12-07 09:33:48.105 12982-12982/com.lear.wifi_datatransfer W/System.err:     at java.net.DatagramSocket.<init>(DatagramSocket.java:80)
   12-07 09:33:48.105 12982-12982/com.lear.wifi_datatransfer W/System.err:     at com.lear.wifi_datatransfer.MainActivity$1.onProgressChanged(MainActivity.java:78)
Abhishek Patel
  • 4,280
  • 1
  • 24
  • 38
Kishor
  • 63
  • 1
  • 6
  • 1
    I have tried solution provided by above link but its not working and question is about to API level 23.Why UDP socket is not working in Android 6.0. – Kishor Dec 07 '16 at 05:00
  • I'm also facing the same issue, how you solved it? – Vignesh Dec 12 '19 at 08:08

0 Answers0