从Facebook获取所有朋友

时间:2011-09-06 17:53:40

标签: android facebook

所以这是我的问题,我正在接受朋友使用请求(),有时它可以工作,我得到了所有的朋友,但有时,我不会得到任何朋友,或者我会得到一些朋友,而不是其他人。什么是向朋友查询Facebook的最佳方式?最初查询后我应该等一下吗?这非常令人沮丧。

2 个答案:

答案 0 :(得分:0)

答案 1 :(得分:0)

这是您需要的所有编码:

private void getFriends(){

    progressDialog.setMessage("Loading friends list");
    progressDialog.show();
    firendsDialog = new Dialog(this);

    //getting all friends of your facebook account

     try
        {
            Bundle params = new Bundle();
            params.putString(Facebook.TOKEN, accessToken);   
            mAsyncRunner.request("me/friends" , params , "GET", new RequestListener()
            {

                @Override
                public void onMalformedURLException(MalformedURLException e, Object state)
                {

                }

                @Override
                public void onIOException(IOException e, Object state)
                {

                }

                @Override
                public void onFileNotFoundException(FileNotFoundException e, Object state)
                {

                }

                @Override
                public void onFacebookError(FacebookError e, Object state)
                {

                }

                @Override
                public void onComplete(String response, Object state)
                {
                    try
                    {
                        JSONObject responseJsonObject = new JSONObject(response);
                        Log.d("TAG", "FB Response =>"+ responseJsonObject);


                        final JSONArray jsonArray = responseJsonObject.getJSONArray("data");


                        for (int i = 0; i < jsonArray.length(); i++)
                        {
                            map = new HashMap<String, String>();
                            JSONObject e = jsonArray.getJSONObject(i);

                            map.put("id",    e.getString("id"));
                            map.put("name",  e.getString("name"));
                            mylist.add(map);

                            userIds = e.getString("id");
                            userName = e.getString("name");
                            Log.d("MainActivity:getAllEvents", "Friend ID, Name:" +  userIds + "," + userName);

                        }
                    }
                    catch (Exception e)
                    {
                        Log.e("log_tag", "Error parsing data "+e.toString());
                    }

}

使用onComplete()在结交朋友后做任何你想做的事情。我已将所有朋友添加到地图数据结构中。