2011-12-20 11 views
2

私はアンドロイドで次のコードを持っています - 私はasmack APIを使用しています。アンドロイド - XMPPクライアントがXMPPローカルホストサーバーに接続できません

public XMPPManager(String server, int port) { 
    this.server = server; 
    this.port = port; 

    SmackConfiguration.setPacketReplyTimeout(packetReplyTimeout); 
    config = new ConnectionConfiguration(server, port); 
    config.setSASLAuthenticationEnabled(false); 
    config.setSecurityMode(SecurityMode.disabled); 
    connection = new XMPPConnection(config); 
    try { 
     connection.connect(); 
     connection.login(user, pass); 
    } catch (XMPPException e) { 
     Log.w("Cannot connect to server.", "0"); 
     e.printStackTrace(); 
    } 
    if (connection.isAuthenticated()) { 
     AccountManager manager = connection.getAccountManager(); 
     try { 
     manager.createAccount("test", "test"); 
     } catch (XMPPException e) { 
     Log.w("Cannot create new user -----" + " on the XMPP server.", "0"); 
     } 
    } 

    } 

私はこのようなXMPPClient活動にXMPPManagerクラスのインスタンスを作成しています:

public class XMPPClient extends Activity { 
    private String username = "user"; 
    private String password = "pass"; 
    private String host  = "127.0.0.1"; 
    private int port  = 5222; 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
    try { 
     super.onCreate(savedInstanceState); 

     XMPPManager xmppManager = new XMPPManager(host, port); 
    } catch (Exception e) { 

    } 
    } 

} 

私は取得しています問題は以下の通りです:

W/Cannot connect to server.(1052): 0 
W/System.err(1052): XMPPError connecting to 127.0.0.1:5222.: remote-server-error(502) XMPPError connecting to 127.0.0.1:5222. 
W/System.err(1052): -- caused by: java.net.ConnectException: /127.0.0.1:5222 - Connection refused 
W/System.err(1052): at org.jivesoftware.smack.XMPPConnection.connectUsingConfiguration(XMPPConnection.java:562) 
W/System.err(1052): at org.jivesoftware.smack.XMPPConnection.connect(XMPPConnection.java:991) 
W/System.err(1052): at company.games.boxer.XMPPManager.<init>(XMPPManager.java:45) 
W/System.err(1052): at company.games.boxer.XMPPClient.onCreate(XMPPClient.java:17) 
W/System.err(1052): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047) 
W/System.err(1052): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627) 
W/System.err(1052): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679) 
W/System.err(1052): at android.app.ActivityThread.access$2300(ActivityThread.java:125) 
W/System.err(1052): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033) 
W/System.err(1052): at android.os.Handler.dispatchMessage(Handler.java:99) 
W/System.err(1052): at android.os.Looper.loop(Looper.java:123) 
W/System.err(1052): at android.app.ActivityThread.main(ActivityThread.java:4627) 
W/System.err(1052): at java.lang.reflect.Method.invokeNative(Native Method) 
W/System.err(1052): at java.lang.reflect.Method.invoke(Method.java:521) 
W/System.err(1052): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868) 
W/System.err(1052): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626) 
W/System.err(1052): at dalvik.system.NativeStart.main(Native Method) 
W/System.err(1052): Nested Exception: 
W/System.err(1052): java.net.ConnectException: /127.0.0.1:5222 - Connection refused 
W/System.err(1052): at org.apache.harmony.luni.net.PlainSocketImpl.connect(PlainSocketImpl.java:254) 
W/System.err(1052): at org.apache.harmony.luni.net.PlainSocketImpl.connect(PlainSocketImpl.java:533) 
W/System.err(1052): at java.net.Socket.connect(Socket.java:1055) 
W/System.err(1052): at java.net.Socket.connect(Socket.java:997) 
W/System.err(1052): at org.jivesoftware.smack.proxy.DirectSocketFactory.createSocket(DirectSocketFactory.java:28) 
W/System.err(1052): at org.jivesoftware.smack.XMPPConnection.connectUsingConfiguration(XMPPConnection.java:550) 
W/System.err(1052): at org.jivesoftware.smack.XMPPConnection.connect(XMPPConnection.java:991) 
W/System.err(1052): at company.games.boxer.XMPPManager.<init>(XMPPManager.java:45) 
W/System.err(1052): at company.games.boxer.XMPPClient.onCreate(XMPPClient.java:17) 
W/System.err(1052): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047) 
W/System.err(1052): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627) 
W/System.err(1052): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679) 
W/System.err(1052): at android.app.ActivityThread.access$2300(ActivityThread.java:125) 
W/System.err(1052): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033) 
W/System.err(1052): at android.os.Handler.dispatchMessage(Handler.java:99) 
W/System.err(1052): at android.os.Looper.loop(Looper.java:123) 
W/System.err(1052): at android.app.ActivityThread.main(ActivityThread.java:4627) 
W/System.err(1052): at java.lang.reflect.Method.invokeNative(Native Method) 
W/System.err(1052): at java.lang.reflect.Method.invoke(Method.java:521) 
W/System.err(1052): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868) 
W/System.err(1052): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626) 
W/System.err(1052): at dalvik.system.NativeStart.main(Native Method) 

任意のアイデアなぜ私は "サーバーに接続できません"を受信して​​います。エラー?前もって感謝します。

+0

私の答えを試しましたか? – user370305

答えて

5

は私が127.0を理解していない

private String host = "10.0.2.2";またはシステムのパブリックIP

Bco'zのAndroid .. ..この行は、

private String host = "127.0.0.1"; 

が原因の例外だと思いますので、試してみてください。ローカルホストとしてのシステムの0.1 ip、このipはエミュレータそのものです。(ループバックアドレス)

+0

これはまさに何が起こっていたかです。 IPアドレスを変更すると助けになりました。ありがとうございました。 – eleanor

0

あなたのxmppサーバは正しく設定されており、あなたはそれに接続することができます。他のサードパーティ製のxmppクライアントを使用して&のサーバーをテストすることができます。

関連する問題