Android应用不会发送正确的Facebook用户ID

时间:2014-06-13 12:49:19

标签: android facebook facebook-android-sdk

我有两个不同的facebook应用程序。一个用于授权Android和一个在Web上。我有一个api for android app来保存服务器上的所有用户。问题是Android应用程序没有发送真实的用户ID。当同一个用户从网上登录时,我得到了正确的id,但这与android为同一个用户返回的完全不同。现在,相同的用户被记录为两个不同的用户,因为他们有不同的ID。

这就是我在android上获取用户ID的方式:

        mAsyncRunner.request("me", new BaseRequestListener() {
            @SuppressLint("CommitPrefEdits")
            @Override
            public void onComplete(String response, Object state) {
                String json = response;
                try {
                    JSONObject profile = new JSONObject(json);
                    facebook_id = profile.getString("id");
                    GlobalClasses.Facebook_id = facebook_id;
                    facebook_user_name = profile.getString("name");
                    SendFacebookIdToServer();
                    editor.putString("facebook_user_name", facebook_user_name);
                    editor.putString("facebook_user_id", facebook_id);
                    editor.commit();
                    Intent i = new Intent(getApplicationContext(),
                            ChooseChempions.class);
                    startActivity(i);
                    overridePendingTransition(R.anim.trans_left_in,
                            R.anim.trans_left_out);
                } catch (JSONException e) {
                    e.printStackTrace();
                }

有没有人遇到过同样的问题?

1 个答案:

答案 0 :(得分:1)

我猜您的某个应用程序是在2014年4月30日之前创建的,之后是一个。对于较新的,您将收到所谓的app-scoped user_ids。请在此处查看我的回答:Weird Facebook ids

为什么使用两种不同的应用程序?我认为只有一个也应该是可行的。