android 5.0中的FaceBookSDK4.0.1无法获取friendList,原因是ERROR 400

时间:2015-07-23 06:34:57

标签: android facebook-sdk-4.0

我使用FacebookSDK创建应用程序,它可以在android 4.4中获取friendList,但它在android5.0中无效。

public static boolean isLogin(){
        if(AccessToken.getCurrentAccessToken() == null){
            Log.d("fb", "fb not login");
            return false;
        }else if(AccessToken.getCurrentAccessToken().isExpired()){
            Log.d("fb", "fb token expired");
            return false;
        }
        return true;
    }

我调试了这个,发现accessToke是正确的:{AccessToken令牌:ACCESS_TOKEN_REMOVED权限:[public_profile,user_friends]}

    public static void makeInviteFriendsRequest(final String msg) {
        // Make an API call to get user data and define a
        // new callback to handle the response.
        SuspensionButton.getInstance().getGameActivity().runOnUiThread(new Runnable() {

            @Override
            public void run() {
                // TODO Auto-generated method stub
                Log.d("fb","fb makeInviteFriendsRequest run");
                GraphRequest request = GraphRequest.newMyFriendsRequest(AccessToken.getCurrentAccessToken(),
                        new GraphRequest.GraphJSONArrayCallback() {//Callback

                            @Override
                            public void onCompleted(JSONArray result, GraphResponse response) {
                                SuspensionButton.getInstance().removeLoading();
                                InviteGen.fbJAarry=result;
                                SuspensionButton.getInstance().showBoardActivity("1","");
                            }
                        });
                request.executeAsync();
            }
        });
    }

然后我调试“newMyFriendsRequest”,发现它是相同的accessToke,具有相同的id和content.But响应发生错误:必须使用活动访问令牌来查询有关当前用户的信息。 有谁知道我错过了什么? 为我的英语道歉,希望我解释清楚。

1 个答案:

答案 0 :(得分:0)

我终于找到了我的错误。我编辑了sdk代码' MY_FRIENDS'属性,更改为' me / invitable_friends?limit = 50',我删除后面的代码'?'然后android 5.0可以获取朋友的数据。但我不知道为什么,也许有人可以告诉我。