I try to open Socket on Android, but every time I try, I get a refusal message all the time, no matter how I try.
The error occurs in the next line of code where I try to create a connection.
Socket socket = new Socket(getLocalIpAddressString(), 8008);
The following is the method I use to get the local IP address:
public static String getLocalIpAddressString() { try { for (Enumeration<NetworkInterface> en = NetworkInterface.getNetworkInterfaces(); en.hasMoreElements();) { NetworkInterface intf = en.nextElement(); for (Enumeration<InetAddress> enumIpAddr = intf.getInetAddresses(); enumIpAddr.hasMoreElements();) { InetAddress inetAddress = enumIpAddr.nextElement(); if (!inetAddress.isLoopbackAddress()) { return inetAddress.getHostAddress().toString(); } } } } catch (SocketException ex) { Log.e("IPADDRESS", ex.toString()); } return null;
}
And I get the error:
WARN/System.err(3574): java.net.ConnectException: /192.168.2.163:8008 - Connection refused WARN/System.err(3574): at org.apache.harmony.luni.net.PlainSocketImpl.connect(PlainSocketImpl.java:237) WARN/System.err(3574): at org.apache.harmony.luni.net.PlainSocketImpl.connect(PlainSocketImpl.java:199) WARN/System.err(3574): at java.net.Socket.startupSocket(Socket.java:734) WARN/System.err(3574): at java.net.Socket.<init>(Socket.java:157) WARN/System.err(3574): at com.networks.phone.engine.SIPEngine.rtpTest(SIPEngine.java:1444)
I assume this is a bug with my iPaddress and port? But can someone point me in the right direction, what could be the reason?
source share