相关疑难解决方法(0)

何时使用Facebook的新Android SDK 3.0请求权限?

随着Facebook的新Android SDK 3.0(几天前发布),身份验证过程发生了变化.

那么你如何申请阅读权限,例如"friends_hometown"?

以下代码是我试图这样做的 - 但我很确定这不是你应该这样做的方式:

版本1:

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    Session.openActiveSession(this, true, new Session.StatusCallback() { // start Facebook login
        @Override
        public void call(Session session, SessionState state, Exception exception) { // callback for session state changes
            if (session.isOpened()) {
                List<String> permissions = new ArrayList<String>();
                permissions.add("friends_hometown");
                session.requestNewReadPermissions(new Session.NewPermissionsRequest(FBImport.this, permissions));
                Request.executeGraphPathRequestAsync(session, "me/friends/?access_token="+session.getAccessToken()+"&fields=id,name,hometown", new Request.Callback() {
                    ...
                });
            }
        }
    });
}
Run Code Online (Sandbox Code Playgroud)

版本2:

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    Session currentSession = Session.getActiveSession();
    if (currentSession == null || currentSession.getState().isClosed()) { …
Run Code Online (Sandbox Code Playgroud)

android facebook facebook-authentication facebook-android-sdk

37
推荐指数
3
解决办法
4万
查看次数

Android:如何使用Graph API从Facebook日历中获取朋友的出生日期

我正在申请需要所有朋友的出生日期的申请.有些人可以使用图形API分享如何获取所有朋友的出生日期的代码.我正在使用以下代码:

// start Facebook Login
    Session.openActiveSession(this, true, new Session.StatusCallback() {

      // callback when session changes state
      @Override
      public void call(Session session, SessionState state, Exception exception) {
        if (session.isOpened()) {

          // make request to the 
            Request.executeMyFriendsRequestAsync(session, new Request.GraphUserListCallback() {

                @Override
                public void onCompleted(List<GraphUser> users, Response response) {
                    //Log.d("AL",""+users.size() + response.toString());
                    for (int i=0;i<users.size();i++){
                        Log.d("AL",""+users.get(i).toString());
                        welcome.setText("Done");
                    }

                }
            });
        }
      }
    });
Run Code Online (Sandbox Code Playgroud)

这只是回复朋友的名字和身份.我必须设置权限才能获得朋友生日?我是facebook SDK的新手.并使用SDK v3.

图形api在json结果后返回

{Response:  responseCode: 200, graphObject: GraphObject{graphObjectClass=GraphObject, state={"data":[{"id":"1580811776","name":"Jamal Abdul Nasir"},{"id":"1610349118","name":"Ahmed Nawaz"}],"paging":{"next":"https:\/\/graph.facebook.com\/100004790803061\/friends?format=json&access_token=AAABtTr8g5U4BANiJdCiBFxQeg0l1eqYYzmSWVM8G1UlyAhTtUrAsoEZAgU19dECXTE2nw7pHIz8bDb7OJGM4wAwzusOVZAQN8yaiYVsQZDZD&limit=5000&offset=5000&__after_id=1610349118"}}}, error: null, isFromCache:false}
Run Code Online (Sandbox Code Playgroud)

哪个没有生日.

android facebook facebook-graph-api

6
推荐指数
1
解决办法
4941
查看次数