没有成功从Android应用程序上的Facebook检索用户个人信息

时间:2011-07-13 15:07:12

标签: android facebook

我正在尝试在我的Android应用程序(我已经集成了facebook)中检索登录用户的个人信息。

为此,我有2 buttons

Button tweet = (Button) findViewById(R.id.btn_post);
Button information = (Button) findViewById(R.id.btn_information);

按下时的第一个按钮会执行如下登录:

tweet.setOnClickListener(new View.OnClickListener() {
            public void onClick(View v) {
                postMessage();

            }
        });

postMessage()的样子:

   public void postMessage() {

        if (facebookConnector.getFacebook().isSessionValid()) {
            postMessageInThread();
        } else {
            SessionEvents.AuthListener listener = new SessionEvents.AuthListener() {

                @Override
                public void onAuthSucceed() {
                    postMessageInThread();
                }

                @Override
                public void onAuthFail(String error) {

                }
            };
            SessionEvents.addAuthListener(listener);
            facebookConnector.login();
        }
    }

记录后,我有第二个button-information

            information.setOnClickListener(new View.OnClickListener() {
            public void onClick(View v) {
                Bundle params = new Bundle(); 
                String accessToken = mFacebook.getAccessToken();

                try
                {
                        params.putString("format", "json");
                        params.putString("access_token", accessToken);

                        String url = "https://graph.facebook.com/me";
                        String response = Util.openUrl(url, "GET", params);
                 try{
                        JSONObject json = Util.parseJson(response);
                        String name = json.getString("name");
                        String fname = json.getString("first_name");

                     }
                    catch(FacebookError e){
                    e.printStackTrace();
                    }

            }
            catch(Exception e)
            {

            }     




            }
        });

按下按钮信息时,我想检索namefirst_name等个人用户信息。

我尝试使用以下方法检索用户的个人信息:

"https://graph.facebook.com/me".

但是当我按下第二个按钮时没有任何反应。有人告诉我我哪里出错了吗?

1 个答案:

答案 0 :(得分:0)

确保您拥有downloaded the latest version。当您登录并将AuthenticationToken存储到SharedPreferences时。 然后使用"me"request()类的Facebook函数调用String resp = facebookConnector.getFacebook().request("me"); JSONObject me = Util.parseJson(resp); String name = json.getString("name"); String fname = json.getString("first_name");

"me"

您必须将Util字符串添加到请求中,剩余的网址将由其{{1}}类自动添加。