获取不正确的Facebook好友ID

时间:2014-08-04 11:56:45

标签: android facebook

我得到了一个错误的Facebook好友ID:我在id中获得了一些长字母数字值,除了其他因素之外,它也不是唯一的(例如,每次调用都会改变)。

实际上我想使用这个id作为登录的唯一标识符,但是因为它每次更改都没那么有用。

那么这里有什么问题?我还能做些什么来进行独特识别?任何建议将不胜感激。

我正在使用此代码获取好友列表:

Bundle required = new Bundle();
                required.putString("fields", "uid, name, picture.type(square), gender, email");

                //Request for friendlist from facebook
                Request req = new Request(session, "me/taggable_friends", required, HttpMethod.GET,
                        new Callback() {
                    @Override
                    public void onCompleted(Response response)
                    {
                         is2=response.getGraphObject();             
                         JSONObject json = is2.getInnerJSONObject();
                         readResponse(json);
                         String str = json.toString();
                         saveFileOnSD("data", str);
                        // generateNoteOnSD("frinedresponse", str);
                         Log.v(TAG, str);
                    }
                      });
                Request.executeBatchAsync(req);

2 个答案:

答案 0 :(得分:3)

问题是您使用的是taggable_friends。 Taggable_friends用于标记朋友。根据设计,每次调用时都会更改id。

如果你想要朋友,你应该使用/我/朋友,但它只会返回已经在使用该应用的朋友。

根据您的需要,可以在此处找到所有朋友的解决方案:https://developers.facebook.com/docs/apps/faq

答案 1 :(得分:1)

2014年4月30日,facebook进行了如此多的更改,因此如果您在此日期之后创建了facebook APP ID ,则无法使用< facebook id strong> taggable_friend ,所以要获得你朋友的脸书ID,你需要使用“我/朋友而不是我/ taggable_friend”,但你只能获得那些正在使用你的应用的朋友列表