Я пытаюсь открыть Socket на Android, но каждый раз, когда я пытаюсь получить сообщение об ошибке «Отказано в соединении», независимо от того, каким образом я пытаюсь.
Ошибка происходит в следующей строке кода, где я пытаюсь создатьсоединение.
Socket socket = new Socket(getLocalIpAddressString(), 8008);
Ниже приведен метод, используемый для получения локального IP-адреса:
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;
}
И ошибка, которую я получаю:
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)
Я предполагаю, что это ошибка с моим Ipaddress и / или портом?Но кто-нибудь может указать мне правильное направление относительно того, что может быть причиной?