使用新的Android SDK 3.0邀请好友请求

时间:2012-10-21 00:04:04

标签: android facebook facebook-android-sdk fbdialogs

我正在使用刚刚在Android上发布的新Facebook SDK 3.0 。我想让用户邀请他/她的朋友加入应用

但是,在新SDK中,您不会使用App ID创建新Facebook 对象。您可以扩展教程中提供的 FacebookActivity http://developers.facebook.com/docs/tutorials/androidsdk/3.0/scrumptious/authenticate/

因此,我无法使用提供的参考资料向朋友发送邀请,因为没有facebook对象可以调用对话框方法http://developers.facebook.com/docs/howtos/androidsdk/3.0/send-requests/

我已经设置了朋友选择器用户界面,并且可以获取用户选择的GraphUser对象。 http:// developers(dot)facebook(dot)com / docs / tutorials / androidsdk / 3.0 / scrumptious / show-friends /

但是,我无法弄清楚如何邀请用户选择的朋友

有人知道如何在新SDK 中邀请朋友吗?你会使用 FbDialog 课吗?如果是,那么需要提供的 url字符串是什么? (我尝试使用“ apprequests ”,但这不起作用)

感谢您的帮助。

2 个答案:

答案 0 :(得分:8)

试试这个链接:

https://developers.facebook.com/docs/howtos/androidsdk/3.0/send-requests/

    private void sendRequestDialog() {
    Bundle params = new Bundle();
    params.putString("message", "Learn how to make your Android apps social");
    WebDialog requestsDialog = (
        new WebDialog.RequestsDialogBuilder(getActivity(),
            Session.getActiveSession(),
            params))
            .setOnCompleteListener(new OnCompleteListener() {

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

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

答案 1 :(得分:4)

您可以使用com.facebook.widget.WebDialog类:

WebDialog dialog = new WebDialog.Builder(myActivity, mySession, ...).build();
dialog.show();

另请参阅辅助类WebDialog.FeedDialogBu​​ilder和WebDialog.RequestsDialogBu​​ilder,以便更轻松地构建这些对话框。