7

Android アプリケーションでのチャットに XMPP 接続 (smack を使用) を使用しています。openfire と接続しましたが、メッセージを送受信することもできます。接続.そのアクティビティに参加しないまでメッセージを取得できません.開始時に接続を確立し、他のアクティビティで再利用するにはどうすればよいですか.コードは、この2つのリンクのConnectionSettingsファイルと、チャットできるチャットスクリーンにあります.このリンクのコメント行も私の質問なので、そのコメントも参照してください。

4

1 に答える 1

5

グローバル XMPPConnection オブジェクトを作成し、以下の関数を使用してグローバル XMPPConnection オブジェクトに格納し、その接続オブジェクトをどこでも使用します。これはサンプル gtalk の例です。

    public XMPPConnection login() throws XMPPException {

         ConnectionConfiguration config = new
         ConnectionConfiguration("talk.google.com",5222,"gmail.com");   
         config.setSecurityMode(SecurityMode.required);
         config.setTruststoreType("BKS");
         config.setTruststorePath("/system/etc/security/cacerts.bks");
         XMPPConnection connection = new XMPPConnection(config);        
        connection.connect();
        connection.login(username, password);
        Presence presence = new Presence(Presence.Type.available);
        presence.setMode(Presence.Mode.available);  
        connection.sendPacket(presence);
        try {
            Thread.sleep(3000);
        } catch (Exception ex) {
            ex.printStackTrace();
        }
     return connection;
} 
于 2012-07-05T11:03:26.940 に答える