2012-05-02 8 views
0

私は現在、Androidに取り組んでいます。XMPPは、ユーザー間の通信に使用されています。 Facebookや電話連絡先リストから友達をインポートする機能を追加する必要があります。
これはどのように達成されるのか誰も知っていますか(つまり、すべての連絡先が利用可能な場合、どのアプリケーションが自分のアプリケーションを使用しているか、そのJIDが何であるかを調べる方法)?Xmppの電子メール(またはその他の情報)から連絡先を見つける

誰もが自分のアカウントをFacebookで使用しているメールに登録して、自分のJIDではなく電子メールで友人を追加することができますが、どうすればいいのか分かりますが、私が知る限り、自分のメールだけを持つユーザーを追加することはできません。

私はasmackOpenfireサーバを使用しています。

答えて

1

電子メールアドレスからXMPPアドレスを推定する標準的な方法はありません。

一部のサービスでは、電子メールとXMPPに同じアドレスを使用できます(gmail.comなど)。特定のドメインがXMPPをサポートしているかどうかを検出する方法の1つは、SRV recordsの存在を確認することです。ハッキーなやり方は、ポート5222/5269でリッスンしているかどうかを確認することです。

電子メールアドレスが与えられていても、電子メールホストがXMPPに対応していることを知っていても、[email protected]は電子メールとXMPPの同じユーザーであるとは限りません。なぜそれがないのか私に尋ねないで、あなたは前提を作ることができません。

あなたは、アプリケーションの他のユーザーを確認する必要があると言います。 JIDにアカウントの独自のデータベースマッピング電子メールアドレスを格納することができます。私はこれが理想的ではないことにあなたに同意します - しかし、それはまさにこの仕事をするほとんどのサービスです。彼らはあなたの電子メールアドレスよりもはるかに多くのデータを持っていることを除いて、Facebookを含む...)。

+0

ありがとう、それは私の質問に答える。さて、私はちょうどデータベース部分を行う方法を理解する必要があります。うまくいけば、私はOpenfireのデータベースを再利用できるのでコピーは必要ありません。 – Jave

関連する問題