asmack + openfire は、Android IM アプリを開発しています。しかし、友達からメッセージを受け取り、対応するチャットにディスパッチする方法がわかりません。
次の機能がありました:openfireサーバーへの接続とログインの成功(acount A)。次に、「FriendsActivity」ですべての友達を ListView に表示し、アイテムをクリックしてから「ChatActivity」を選択します。「ChatActivity」で、アカウント B (または別のアカウント) へのチャットを作成します。
chatManager.createChat(B, new MessageListener() {
@Override
public void processMessage(Chat chat2,
org.jivesoftware.smack.packet.Message msg) {
handler.obj = msg; //handler to updata the listview to show message history
}
}
このコードは B とのチャットの実装に役立ちますが、A は最初にアイテムをクリックして「ChatActivity」にする必要があります。
「FriendsActivity」でメッセージを受け取り、「C さんから新しいメッセージが届いています」(C さんは A さんの友達)など、さまざまなヒントを与える方法。次に、C アイテムをクリックして 'Chat Activity can show the message from C.