2013-12-17 34 views
0

我想它是getProperty("sex")("gender")user.asMap().get("sex")("gender")? 另外,我在下面的行中設置了什麼樣的權限?面向Android的Facebook SDK:如何獲取用戶的性別

authButton.setReadPermissions(Arrays.asList("basic_info", "email", "user_likes", "user_status")); 
+0

檢查此鏈接http://stackoverflow.com/questions/14542193/how-to-get-facebook-photo-full-name-gender-using-facebook-sdk-android?rq=1 –

回答

8

對此沒有單獨的許可,這個值就可以得到的性別像這個問題,看看THIS

private String UserInfoDisplay(GraphUser user) {  

     StringBuilder userInfo = new StringBuilder("");    
     String Name = user.getName(); 
     String Id = user.getId(); 
     String lastname = user.getLastName(); 
     String firstname = user.getFirstName(); 
     String getUsername = user.getUsername();    

     String get_gender = (String) user.getProperty("gender"); 


     String image_url = "http://graph.facebook.com/"+user.getId()+"/picture?type=square";   

     Log.i("User information == >", Name +Id + lastname+ 
       firstname + image_url + get_gender + getUsername + "usermail"+User_mail ); 

     text.setText(Name + " mail = " +User_mail); 

     return userInfo.toString(); 
    } 
+0

如果我得到用戶圖像這種方式,這是否消除了使用com.facebook.widget.ProfilePictureView並使用我自己的ImageButton代替用戶頭像的需求? –

+0

電子郵件是否被認爲是用戶名? – Lion789

+0

你能檢查http://stackoverflow.com/questions/31275629/facebook-sdk-for-android-graphuser。與此類似,但是其他權限。我嘗試過,但在訪問所需的詳細信息時遇到問題。 –

1
Request.executeMeRequestAsync (session, new Request.GraphUserCallback() { 

     @Override 
     public void onCompleted(GraphUser user, Response response) { 


      String fbId = user.getId(); 
      String fbAccessToken = fbAccessToken; 
      String fbName = user.getName(); 
      String gender = user.asMap().get("gender").toString();  

      Log.i("FB", gender); 
     } 
    }); 
2

您可以從「user_about_me」權限獲取用戶的性別,並得到來自響應json的性別user.getProperty(「gender」).toString()

+0

我忘了許可......謝謝。 – offset

+0

什麼?你沒有這種權限。我引用:'一個人的名字,個人資料圖片,地區,年齡範圍和性別默認包含public_profile權限.' – erdomester

相關問題