Facebook FriendPicker未显示(Facebook Android SDK教程“显示朋友”不是最新的?)

时间:2014-05-08 22:08:45

标签: android facebook facebook-graph-api facebook-android-sdk

我最近下载了 facebook-android-sdk-3.8.0 并开始开发一个带有Facebook集成的示例应用程序。

我在Facebook Developers页面上关注这些教程: https://developers.facebook.com/docs/android/scrumptious

我已成功实施前两部分,即“认证”和“个性化”。但现在我完全坚持“显示朋友”教程(https://developers.facebook.com/docs/android/scrumptious/show-friends)。

步骤2e工作正常,但从那个步骤3c不是。

问题是朋友选择器根本没有显示。当我触摸“与谁?选择朋友”按钮时,活动打开,我看到顶部的蓝色栏标有“选择朋友”和右侧的完成按钮。但是这项活动是白色的,即没有朋友名单。

通过检查LogCat,我无法识别任何有意义的错误或日志消息。

我已经逐句阅读了这个教程至少四次,并与我的实现进行了比较,我找不到为什么没有显示朋友选择器的原因。 也尝试谷歌的原因和解决方案,但没有运气。

如果您能确定问题并帮助我解决这个问题,我将非常感激,所以我可以继续学习本教程:)

1 个答案:

答案 0 :(得分:0)

解析是请求LoginButton默认的权限。 在SplashFragment和setReadPermission()中声明公共全局LoginButton; 例如:

private void showFragment(int fragmentIndex, boolean addToBackStack) {
        FragmentTransaction transaction = fm.beginTransaction();
        for (int i = 0; i < fragments.length; i++) {
            if (i == fragmentIndex) {
                transaction.show(fragments[i]);
                if(i==SPLASH){
                    SplashFragment sf=(SplashFragment)fragments[i];      sf.login.setReadPermissions(Arrays.asList("public_profile","user_friends"));
                    //Log.d("TEST","Permission Set");
                }
            } else {
                transaction.hide(fragments[i]);
            }
        }
        if (addToBackStack) {
            transaction.addToBackStack(null);
        }
        transaction.commit();
    }