0

我有个问题。我可以带上姓名、性别(公开资料)。但我不能带 user_birthday、email、offline_access。

问题如下。

不应将读取权限 (user_birthday) 传递给发布或管理授权请求。不应将阅读权限(电子邮件)传递给发布或管理授权请求。不应将读取权限 (offline_access) 传递给发布或管理授权请求。

请求并带来 Facebook 数据源

 try{

           json = Util.parseJson(mFacebook.request("me"));
           uuserName = json.getString("name");
           userSex = json.getString("gender");
           userBirth = json.getString("user_birthday");            
           userEmail = json.getString("email");

       } catch (Exception e) {
           // TODO Auto-generated catch block
           e.printStackTrace();
       }

登录源

String[] sPermissions = {"user_birthday", "email", "offline_access"};
mFacebook.authorize(this, sPermissions, new AuthorizeListener());
4

2 回答 2

0

试试这个代码:

  userBirth = json.getString("birthday"); 
于 2013-02-06T10:12:45.793 回答
0

您收到的消息是警告而不是错误。

发生这种情况是因为您使用的是 Facebook Android SDK 2.0,在 SDK v3.0 发布后已被弃用。

在最新的 SDK 中,Util不再以相同的方式使用类,并以不同的方式请求权限。

Facebook.request("me")也已被弃用,因为现在所有数据都可以在用户登录时使用widget.Facebook.loginButton.

尝试阅读更新后的 SDK 的文档,警告应该不会再打扰您了。

遇到实际问题,为什么您无法获得生日是因为您尝试在 JSON 数据中访问的参数错误。

你需要使用json.getString("birthday"),根据文档

于 2013-02-06T10:29:02.517 回答