7

iOS用のサンプルFacebookチャットプロジェクトをここで見つけました。

また、私はここでFacebookのチャットドキュメントを取得しました

同じ方法、

FacebookチャットのサンプルアプリやAndroidでfbチャットを実装する方法を知っている人はいますか?

4

1 に答える 1

9

利用可能な Android オープン ソース プロジェクトが 1 つあります。Beem プロジェクトと、Facebook チャットを接続するには、次のガイドラインを使用できます。

Android で Facebook チャット API を実装する手順:

  1. まず、既存のプロジェクトにMemorizingTrustManager Library プロジェクトを実装する必要があります。

    =>そのためには、既存のプロジェクトに次の3つのファイルをコピーする必要があります

    • MemorizingTrustManager/src/de/duenndns/ssl/MTMDecision.java
    • MemorizingTrustManager/src/de/duenndns/ssl/MemorizingActivity.java
    • MemorizingTrustManager/src/de/duenndns/ssl/MemorizingTrustManager.java

    => そして、values/string.xmlに次の値を追加します

    <resources>
        <string name="mtm_accept_cert">Accept Unknown Certificate?</string>
        <string name="mtm_decision_always">Always</string>
        <string name="mtm_decision_once">Once</string>
        <string name="mtm_decision_abort">Abort</string>
        <string name="mtm_notification">Certificate Verification</string>
    </resources>
    
  2. 2 番目のステップ, X-FACEBOOK-PLATFORMなどのSASLAuthenticationを使用する代わりに、次のコードを使用して Facebook に接続し、 Facebook Jabber ID (username@chat.facebook.com)を使用してログインできます。

    public void connectToFb() throws XMPPException {
    
    ConnectionConfiguration config = new ConnectionConfiguration("chat.facebook.com", 5222);
    config.setSASLAuthenticationEnabled(true);
    config.setSecurityMode(SecurityMode.required);
    config.setRosterLoadedAtLogin(true);
    config.setTruststorePath("/system/etc/security/cacerts.bks");
    config.setTruststorePassword("changeit");
    config.setTruststoreType("bks");
    config.setSendPresence(false);
    try {
        SSLContext sc = SSLContext.getInstance("TLS");
        sc.init(null, MemorizingTrustManager.getInstanceList(this), new java.security.SecureRandom());
        config.setCustomSSLContext(sc);
    } catch (GeneralSecurityException e) {
        Log.w("TAG", "Unable to use MemorizingTrustManager", e);
    }
    XMPPConnection xmpp = new XMPPConnection(config);
    try {
        xmpp.connect();
        xmpp.login("facebookusername", "****"); // Here you have to used only facebookusername from facebookusername@chat.facebook.com
        Roster roster = xmpp.getRoster();
        Collection<RosterEntry> entries = roster.getEntries();
        System.out.println("Connected!");
        System.out.println("\n\n" + entries.size() + " buddy(ies):");
        // shows first time onliners---->
        String temp[] = new String[50];
        int i = 0;
        for (RosterEntry entry : entries) {
            String user = entry.getUser();
            Log.i("TAG", user);
        }
    } catch (XMPPException e) {
        xmpp.disconnect();
        e.printStackTrace();
    }
    }
    

最後に、LogCat ビューで Facebook アカウントのすべてのメンバー リストを取得すると、このチュートリアルを使用して簡単な Facebook チャットを実装できます。

于 2012-06-28T04:35:51.043 に答える