2016-05-19 6 views
-1

私はlocalhostでsmackを使ってopenfire/ejabberdに接続しようとしています(私はそれらの両方を設定し、strophe.jsとの接続をテストしています)。これは私が試したものです:次のアドレスは失敗しました: '127.0.0.1:5222' openfire/ejabberd smack

Log.d(TAG, "Connecting to server " + mServiceName); 
      XMPPTCPConnectionConfiguration.Builder config = XMPPTCPConnectionConfiguration.builder(); 
      config.setUsernameAndPassword("[email protected]", "password"); 
      config.setSecurityMode(ConnectionConfiguration.SecurityMode.disabled); 
      config.setServiceName("home"); 
      config.setHost("127.0.0.1"); 
      config.setPort(5222); 
      config.setCompressionEnabled(true); 
      config.setDebuggerEnabled(true); 
      final XMPPTCPConnection xmpptcpConnection = new XMPPTCPConnection(config.build()); 
      SASLAuthentication.blacklistSASLMechanism("DIGEST-MD5"); 

      mConnection = new XMPPTCPConnection(config.build()); 
      mConnection.setPacketReplyTimeout(10000); 
      mConnection.addConnectionListener(this); 
      mConnection.connect(); 
      mConnection.login(); 

が、私は戻って取得:

org.jivesoftware.smack.SmackException$ConnectionException: The following addresses failed: '127.0.0.1:5222' failed because java.net.ConnectException: failed to connect to /127.0.0.1 (port 5222) after 30000ms: isConnected failed: ECONNREFUSED (Connection refused) 

は私が接続するために自分の携帯電話を使用しています。私はインターネットに登録されていないので、これが起こっていると仮定します。ドメインを購入してサブドメインを作成しましたが、私は自分のopenfire/ejabberdサーバーを登録する方法を知らないです。

ビルダーの設定で何かがあれば誰でも私にそれを登録する方法のいくつかのintructionsを与えることができますか?

編集:openfireを公開アカウントに登録するには、sshを有効にしていくつかの設定を行う必要があります。ローカルアカウントで自分のAndroidアプリをテストする方法はありませんか?

+0

あなたの電話とコンピュータを接続するローカルネットワークよりもネットワークがある場合。 IPv4をホストにします。 –

+0

私はそれを試みました、と思います。 ipconfigからの無線、computrrケーブル、ip経由の電話。残念なことに私は同じエラーが出ます。 –

+0

あなたは私の[ここに投稿]をチェックすることができます(http://stackoverflow.com/questions/33551229/sending-and-receiving-messages-using-smack-api-for-android/34536098#34536098) –

答えて

1

IP 127.0.0.1を使用しています。これは、ローカルコンピュータのローカルIPアドレスを意味します。あなたの携帯電話からそれを実行することは、あなたのコンピュータ上のXMPPサーバーに接続しようとしているのではなく、あなたの電話機のXMPPサーバーに接続しようとしていることを意味します。

動作しません。コンピュータのIPアドレスを使用する必要があります。

+0

私のopenfireがローカルにインストールされています私のPCで。それは私にSmackExceptionを与えています:例外:java.net.SocketTimeoutException: "私のローカルIPアドレス"への接続に失敗しました。あなたはこの問題に関するいくつかのアドバイスをお願いしますか?ありがとう –

0

ご質問の回答が見つからない場合は、自分のホスト(127.0.0.1)ではなく、このホスト10.0.2.2を使用してみてください。これは "Connection refused"を解決します。

0

ローカルコンピュータのローカルIPアドレスであるIP 127.0.0.1を使用しています。動作しません。私たちのコンピュータのIPアドレスを使用する必要があります。

関連する問題