2012-04-08 3 views
0
public class FacebookConnect extends Activity { 

    Facebook facebook = new Facebook(""); 
    String FILENAME = "AndroidSSO_data"; 
    private SharedPreferences mPrefs; 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 
     /* 
     * Get existing access_token if any 
     */ 
     mPrefs = getPreferences(MODE_PRIVATE); 
     String access_token = mPrefs.getString("access_token", null); 
     long expires = mPrefs.getLong("access_expires", 0); 
     if(access_token != null) { 
      facebook.setAccessToken(access_token); 
     } 
     if(expires != 0) { 
      facebook.setAccessExpires(expires); 
     } 

     /* 
     * Only call authorize if the access_token has expired. 
     */ 
     if(!facebook.isSessionValid()) { 

      facebook.authorize(this, new String[] {}, new DialogListener() { 
       public void onComplete(Bundle values) { 
        SharedPreferences.Editor editor = mPrefs.edit(); 
        editor.putString("access_token", facebook.getAccessToken()); 
        editor.putLong("access_expires", facebook.getAccessExpires()); 
        editor.commit(); 
       } 

       public void onFacebookError(FacebookError error) {} 

       public void onError(DialogError e) {} 

       public void onCancel() {} 
      }); 
     } 
    } 

    @Override 
    public void onActivityResult(int requestCode, int resultCode, Intent data) { 
     super.onActivityResult(requestCode, resultCode, data); 

     facebook.authorizeCallback(requestCode, resultCode, data); 
     AsyncFacebookRunner asyncRunner = new AsyncFacebookRunner(this.facebook); 
     asyncRunner.request("me", new meRequestListener()); 
    } 
} 

これはFBに接続してログインするコードです.2つの疑問があります。 1.ユーザー情報を取得するにはどうすればよいですか? (FB名) 2.データベースに保存するにはどうすればいいですか?ここでの問題は、たとえユーザーがFacebookを介してログインできるようにしても、同じ名前の他のユーザーがいる可能性があることです。では、データベースにユニークなエントリを作成するための電子メールアドレスを取得できますか?Androidアプリでfb connectを使用するには?

答えて

0

ユーザーの一意の識別子が必要な場合は、彼のfacebook idを使用します。これを得るには、FBによって提供されるグラフAPIを使用することができます。ユーザーが有効なアクセストークンを持っている場合、それは、唯一の作品(https://graph.facebook.com/me

0

インストールする必要があります。ここではこれについての詳細情報:https://developers.facebook.com/docs/reference/api/ は(FacebookのIDを持つ)基本的な情報を取得するには、現在ログインしているユーザーの、あなたはこのAPIを使用することができます。コアのAndroid SDKと同様の拡張、、ない、ここにあなたが何をする必要があるかです:

1)

2をgithub.com/facebook/facebook-android-sdkに行く)のFacebookをダウンロードディレクトリのみ!他のディレクトリは単なる例です。

3)あなたが行ってもいいです)あなたが現在

4で作業している、パッケージに(あなたがしたい場合は、あまりにもドローアブルをコピーすることができます)SRCからファイルを入れて、あなたができますFacebookの「SDK」

も参照のことが、それは一例に取り組んでいる。この例https://github.com/facebook/facebook-android-sdk/tree/master/examples/HackbookダウンロードはFacebookの

が提供するを使用
関連する問題