7

これは私のfacebookにログインするためのコードです。私のアプリからフェイスブックにログインしても、エミュレータでは動作しますが、デバイスでは動作しません。

mLoginButton = (LoginButton) findViewById(R.id.login); 

     // restore session if one exists 
     SessionStore.restore(Utility.mFacebook, this); 
     SessionEvents.addAuthListener(new FbAPIsAuthListener()); 
     SessionEvents.addLogoutListener(new FbAPIsLogoutListener()); 

     /* 
     * Source Tag: login_tag 
     */ 
     mLoginButton.init(this, AUTHORIZE_ACTIVITY_RESULT_CODE, Utility.mFacebook, permissions); 

     if (Utility.mFacebook.isSessionValid()) { 
      requestUserData(); 
     } 
public class FbAPIsAuthListener implements AuthListener { 

     //@Override 
     public void onAuthSucceed() { 
      requestUserData(); 
     } 

     //@Override 
     public void onAuthFail(String error) { 
      mText.setText("Login Failed: " + error); 
     } 
    } 

    /* 
    * The Callback for notifying the application when log out starts and 
    * finishes. 
    */ 
    public class FbAPIsLogoutListener implements LogoutListener { 
     //@Override 
     public void onLogoutBegin() { 
      mText.setText("Logging out..."); 
     } 

     ///@Override 
     public void onLogoutFinish() { 
      mText.setText("You have logged out! "); 
      mUserPic.setImageBitmap(null); 
     } 
    } 

エミュレータでは、完全に機能します。私はすでにFacebookにインストールされているトン3のデバイスで試してみましたが、ここで問題があります。

ロード時にarounを回転させるだけで何もしません。もう一度ログインボタンが表示されます。 その後、元のFacebookアプリケーションからログアウトしようとしました。アプリのログインボタンを押すとログインウィンドウが表示されましたが、元のFacebookアプリケーションのログインウィンドウでログインしていました。このように開始されたようなものです。

私が使用していたコードがhackbook.java

+0

デバイスに搭載されているように、エミュレータにFacebookアプリケーションがインストールされていますか?また、[Platform Status](http://developers.facebook.com/live_status/)に記載されているように、現在Andro sdkに問題があります。ネットワークスニファを実行して、エミュレータの応答 –

+0

がインストールされていないことを確認することもできます。 –

答えて

3

から取られているプラ​​ットフォームの状況は、SSOに問題があることを述べています。

SSOは、アンドロイドデバイスにFacebookのアプリケーションがインストールされている場合にのみ機能し、あなたが説明していることは、このすべてに当てはまります。 エミュレータでは、Facebookアプリケーションを持っていないので、アプリケーションがユーザをログに記録しようとすると、fbアプリケーションに付属しているSSOプロセスを使用する代わりに、sdkにあるダイアログが使用されます。

あなたはfbアプリを持っていると言いましたが、SSOが起動し、少なくとも現在は問題があります。 端末でFacebookアプリケーションをアンインストールするか、SSOをキャンセルするか、つまり:How to disable Facebook single sign on for android - Facebook-android-sdk

+0

私はそれをunistallするなら、それは実行されますが、事実は、通常のユーザーは明らかに私のインストールするために元のFacebookのアプリをunistallされません。 –

+0

明らかに、私はちょうどあなたが持っている問題がFacebookのSSOで持っている問題のためにあることを確認することを提案していた。これで問題は解決されるまで待ちますが、何もする必要はありません。他のAPIを使って作業することは危険です。 –

+0

これまたはこれに対する修正のための特定の解決策はありますか? –

0

システムのハッシュキーを生成し、既存のFacebookブックアプリケーションを編集するだけで済みます。

関連する問題