facebook登录错误。无法获得user_birthday和user_location

时间:2014-07-24 04:52:20

标签: android facebook

您好我正在使用Facebook登录我的应用程序。我无法获得用户

来自facebook的

生日和用户位置。以下是用于从用户获取详细信息的方法。我正在使用活动类进行登录。

          private void loginFacebook() {
    // TODO Auto-generated method stub
    if (!facebook.isSessionValid()) {
        final Session.OpenRequest request = new 

       Session.OpenRequest(LoginActivity.this);

        facebook.authorize(this, new String[] { 

    "email","user_birthday","user_about_me","user_location"
         }, new LoginDialogListener());

    } else {
        getProfileInformation();


    }
}

    public void getProfileInformation() {
    // TODO Auto-generated method stub
    try {

        profile = Util.parseJson(facebook.request("me"));
        mUserId = profile.getString("id");
        Gloabalvariables.setUserID(mUserId);
        mUserToken = facebook.getAccessToken();
        mUserName = profile.getString("name");
        mUserEmail = profile.getString("email");
        JSONObject c=new JSONObject(profile.getString("location"));
        mUserhomeTown=c.getString("name");

        new insertintoServer().execute();
        //getOnlineFreindList();
        runOnUiThread(new Runnable() {

            public void run() {
                Toast.makeText(getApplicationContext(), "Name: " + mUserName            "\nEmail+"+ mUserEmail, Toast.LENGTH_LONG).show();
            }
        });
    } catch (FacebookError e) {
        e.printStackTrace();
    } catch (MalformedURLException e) {
        e.printStackTrace();
    } catch (JSONException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    }
}

这里的问题是我能够从用户那里获得user_birthday和user_location仅用于我创建app id的帐户。对于其他帐户,我无法获得这些详细信息。我挣扎了两天。但我发现我在代码中找错了。

1 个答案:

答案 0 :(得分:1)

转到Facebook Developer Console设置权限:

Facebook Graph API Explorer

有:

  1. 应用
  2. 获取访问令牌:在此处选择您想要的域名。
  3. 搜索字段
  4. 提交
  5. 保存会话