空Facebook FriendPickerFragment

时间:2014-05-27 10:14:00

标签: android facebook android-fragments

我希望在其他片段中显示FriendPickerFragment但我得到空列表请帮助我无法找到关于thay的任何信息

这是布局

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >

<FrameLayout
    android:id="@+id/friend_picker_fragment"
    android:layout_width="match_parent"
    android:layout_height="match_parent" />

</LinearLayout>

这是片段代码

public class HomeFragment扩展了Fragment {

public static final Uri FRIEND_PICKER = Uri.parse("picker://friend");
private FriendPickerFragment friendPickerFragment;
private static final String TAG = "MainFragment";

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
        Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    View rootView = inflater.inflate(R.layout.home_fragment, container,
            false);

    FragmentManager manager = getActivity().getSupportFragmentManager();
    Fragment fragmentToShow = null;

    friendPickerFragment = new FriendPickerFragment();
    friendPickerFragment
            .setOnErrorListener(new PickerFragment.OnErrorListener() {
                @Override
                public void onError(PickerFragment<?> fragment,
                        FacebookException error) {
                    Toast.makeText(getActivity(), error.getMessage(),
                            Toast.LENGTH_SHORT).show();
                }
            });
    friendPickerFragment
            .setOnDoneButtonClickedListener(new PickerFragment.OnDoneButtonClickedListener() {
                @Override
                public void onDoneButtonClicked(PickerFragment<?> fragment) {
                    Toast.makeText(getActivity(), "Done",
                            Toast.LENGTH_SHORT).show();
                }
            });
    fragmentToShow = friendPickerFragment;

    manager.beginTransaction()
            .replace(R.id.friend_picker_fragment, fragmentToShow).commit();

    return rootView;
}

@Override
public void onStart() {
    super.onStart();
    try {
        friendPickerFragment.loadData(false);
    } catch (Exception ex) {
    }
}

    }

1 个答案:

答案 0 :(得分:3)

Facebook最近发布了新的sdk,以提高安全性。以下是在您的应用中使用facebook sdk的几个要求。

先检查这一点 !!

  1. 应用程序应发送提交内容并需要获得 Facebook团队的批准才能在您自己的应用中使用Facebook集成,以列出朋友详细信息,访问位置和访问其他特殊权限审批手续与谷歌播放中的商店列表应用程序类似。

  2. 该应用程序必须列在Google Play中,或者您可以将其作为测试用户集成(即在Google Play中进行beta测试)。

  3. 应用程序应具有正确的程序包名称,启动活动,域名,网站URL和电子邮件。

  4. 注册的 app id 必须与应用名称匹配,并且必须为使用哈希密钥 >不同的机器

  5. 需要添加截图说明应用程序徽标

  6. 在团队成功批准后,它会在您的应用名称附近显示一个有效符号。

  7. 希望这个帮助 !!!