Android Socket connexion refusée

Je suis en train d'essayer d'ouvrir un Socket sur Android, mais chaque fois que j'essaie, je reçois connexion refusée erreur peu importe ce que je cherche.

L'erreur se produit sur la ligne de code suivante, où j'essaie de créer la connexion.


Socket socket = new Socket(getLocalIpAddressString(), 8008);

Ce qui suit est la méthode que j'utilise pour obtenir l'adresse ip locale:


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;

}


Et l'erreur que j'obtiens est:


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)

Je présume que c'est une erreur avec mon adresse ip et de port ou? Mais quelqu'un peut me pointer dans la bonne direction quant à ce qui pourrait être la cause?

Pouvez-vous telnet à l'adresse et du numéro de port premier à voir ce qui se passe. Il pourrait être le réel de l'ordinateur auquel vous vous connectez.
Je suis en train d'essayer cela sur un appareil Android, donc je ne suis pas sûr que telnet serait beaucoup aider?
Cela peut être une question stupide, mais est-il quelque chose à l'écoute sur le port 8008 sur votre appareil?
Je reçois connexion refusée n'importe quel port je tente 🙂
Bien, je suppose que je voulais dire que si il n'y a pas un autre programme qui écoute sur le port 8008 alors vous ne serez pas en mesure de se connecter. Êtes-vous essayer d'accepter les demandes entrantes ou de se connecter à un autre programme?

OriginalL'auteur Donal Rafferty | 2010-03-11