use*_*544 4 sdk android facebook
如何获得用户生日user.getBirthday()?
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 /me API
Request.executeMeRequestAsync(session, new Request.GraphUserCallback() {
// callback after Graph API response with user object
@Override
public void onCompleted(GraphUser user, Response response) {
if (user != null) {
TextView welcome = (TextView) findViewById(R.id.textView1);
welcome.setText("Hello " + user.getBirthday() + "!");
Log.d("user_birthday","user_birthday:"+user.getBirthday());//user.getBirthday() this value always is null?
}
}
});
}
}
});
Run Code Online (Sandbox Code Playgroud)
首先,您是否设置了user_birthday的权限?如果您想访问user_birthday信息,这一点非常重要
如果用户通常不是null,则可以通过user.getBirthday()获取生日,因为从我看到你正在使用新的facebook SDK
例如,当您使用facebook authbutton时,您可以设置权限
authButton.setReadPermissions(Arrays.asList("user_location", "user_birthday", "user_likes"));
Run Code Online (Sandbox Code Playgroud)
或者您可以重新授权
Session.ReauthorizeRequest reauthRequest = new Session.ReauthorizeRequest(this, PERMISSIONS).
setRequestCode(REAUTHORIZE_ACTIVITY).
setLoginBehavior(SessionLoginBehavior.SSO_WITH_FALLBACK);
session.reauthorizeForPublish(reauthRequest);
Run Code Online (Sandbox Code Playgroud)
其中PERMISSION是包含您的许可的数组
| 归档时间: |
|
| 查看次数: |
10997 次 |
| 最近记录: |