Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/195.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 在facebook respone中获取空graphobject_Android_Facebook - Fatal编程技术网

Android 在facebook respone中获取空graphobject

Android 在facebook respone中获取空graphobject,android,facebook,Android,Facebook,我试图用他们的个人资料图片获得facebook好友列表,但没有成功。这是密码 public class MainActivity extends Activity { private final static String TAG = "MainActivity"; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setCon

我试图用他们的个人资料图片获得facebook好友列表,但没有成功。这是密码

public class MainActivity extends Activity {

private final static String TAG = "MainActivity";

  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);   

    Session.openActiveSession(this, true, new Session.StatusCallback(){

        @Override
        public void call(Session session, SessionState state,
                Exception exception) {

            requestMyAppFacebookFriends(session);

        }

    });


  }

  private Request createRequest(Session session) {
        Request request = Request.newGraphPathRequest(session, "me/friends", null);

        Set<String> fields = new HashSet<String>();
        String[] requiredFields = new String[] { "id", "name", "picture"};
        fields.addAll(Arrays.asList(requiredFields));

        Bundle parameters = request.getParameters();
        parameters.putString("fields", TextUtils.join(",", fields));
        request.setParameters(parameters);

        return request;
    }


  private void requestMyAppFacebookFriends(Session session) {
        Request friendsRequest = createRequest(session);
        friendsRequest.setCallback(new Request.Callback() {

            @Override
            public void onCompleted(Response response) {
                List<GraphUser> friends = getResults(response);
               Log.v(TAG, "friends list size "+friends.size());
            }
        });
        friendsRequest.executeAsync();
    }

  private List<GraphUser> getResults(Response response) {
        GraphMultiResult multiResult = response.getGraphObjectAs(GraphMultiResult.class);
        GraphObjectList<GraphObject> data = multiResult.getData();
        return data.castToListOf(GraphUser.class);
    }

  @Override
  public void onActivityResult(int requestCode, int resultCode, Intent data) {
      super.onActivityResult(requestCode, resultCode, data);
      Session.getActiveSession().onActivityResult(this, requestCode, resultCode, data);
  }

我面临的问题是,当我尝试获取graphobject response.getGraphObjectAsGraphMultiResult.class时,它返回null。所以,请告诉我我做错了什么,或者是否有其他方法可以获得facebook好友。

您可能正在使用Graph API的v2.0。这样,你只会得到同样使用相同应用程序的朋友


请参见

仍然可能会收到空响应,因为没有您的朋友使用该应用程序!那么,即使他们不使用应用程序,我怎么能得到所有朋友的名单呢?很简单:你不能。你说所有朋友都不使用应用程序,你指的是fb应用程序还是我的应用程序?