1

m trying to use facebook request dialog to enable the user to pick a friend to challenge in a turn based trivia android game. i dont have a web version of the game so i dont canvas. i已经设置了一个请求对话框,显示朋友列表,当我使用 facebook 测试用户登录时效果很好,但是当我使用我的用户登录时,该用户也是 facebook 应用程序的管理员,然后对话框显示只有 5 个朋友的列表。该对话框允许搜索更多朋友,当我这样做时,我可以搜索未出现在列表中的其他朋友。我的用户拥有“public_profile”、“read_friendlists”、“user_friends”权限。请求对话代码

private void sendRequestDialog() {
    Bundle params = new Bundle();
    params.putString("message", "Learn how to make your Android apps social");
    params.putString("filters", "app_non_users");

    WebDialog requestsDialog = (
            new WebDialog.RequestsDialogBuilder(MainActivity.this,
                    //getActivity(),
                    Session.getActiveSession(),
                    params))
                    .setOnCompleteListener(new OnCompleteListener() {

                        @Override
                        public void onComplete(Bundle values,
                                FacebookException error) {
                            if (error != null) {
                                if (error instanceof FacebookOperationCanceledException) {
                                    Toast.makeText(getApplicationContext(),
                                            //getActivity().getApplicationContext(), 
                                            "Request cancelled", 
                                            Toast.LENGTH_SHORT).show();
                                } else {
                                    Toast.makeText(getApplicationContext(),
                                            //getActivity().getApplicationContext(), 
                                            "Network Error", 
                                            Toast.LENGTH_SHORT).show();
                                }
                            } else {
                                final String requestId = values.getString("request");
                                if (requestId != null) {
                                    Toast.makeText(getApplicationContext(),
                                            //getActivity().getApplicationContext(), 
                                            "Request sent",  
                                            Toast.LENGTH_SHORT).show();
                                } else {
                                    Toast.makeText(getApplicationContext(),
                                            //getActivity().getApplicationContext(), 
                                            "Request cancelled", 
                                            Toast.LENGTH_SHORT).show();
                                }
                            }   
                        }

                    })
                    .build();
    requestsDialog.show();
}

我不明白为什么它不显示整个朋友列表。请帮忙。另外,这种挑战好友游戏的方式是否被facebook允许,还有其他更推荐的方式吗?

谢谢!

4

1 回答 1

0

user_friends 将仅返回使用发出请求的应用程序的朋友。通过图形 API 参考

于 2014-08-20T17:08:31.387 回答