Facebook App请求不通过Facebook Android SDK发送给Facebook好友

时间:2013-06-14 11:56:04

标签: android facebook facebook-graph-api

我想一次向一位朋友和所有朋友发送应用请求。我已经关注了以下帖子,

how-to-send-app-requests-to-friends-through-facebook-android-sdk

dialogs/requests/

我能够按照开发网站中的描述获得正确的响应,但问题是我的朋友都没有收到应用程序请求通知。以下是我尝试过的,

Bundle params = new Bundle();
    params.putString("FIRST INVITATION", "My invitation from facebook..");
    params.putString("message", "My First App Invitation from Android App to facebook.Lol");
    params.putString("app_id",APP_ID);
    mFacebook.dialog(this, "apprequests", params, new DialogListener() {
        @Override
        public void onComplete(Bundle values) {

             Toast toast = Toast.makeText(getApplicationContext(), "App request sent", Toast.LENGTH_SHORT);
                toast.show();

        }

        @Override
        public void onFacebookError(FacebookError error) {

            Toast.makeText(getApplicationContext(), "Facebook Error: " + error.getMessage(), Toast.LENGTH_SHORT).show();

        }

        @Override
        public void onError(DialogError e) {


        }

        @Override
        public void onCancel() {

             Toast toast = Toast.makeText(getApplicationContext(), "App request cancelled", Toast.LENGTH_SHORT);
                toast.show();
        }
    });

谁能告诉我这里出了什么问题?

修改:1

我检查了SDK SDK附带的Hackbook示例应用程序APP ID,我的应用程序工作正常所以知道应用程序设置中一定有问题。我也禁用了沙箱模式。是否需要额外的设置为了发送应用程序请求??

修改-2

经过一些R& D我开始知道真正的问题。编码部分没有问题。我在FB Dashboard中的app设置中出错了。我需要在应用程序设置中添加Facebook Hash密钥。不管怎样,谢谢大家的帮助。

2 个答案:

答案 0 :(得分:1)

指示请求

Bundle params = new Bundle();
params.putString("message", "I just smashed " + application.getScore() +
    " friends! Can you beat it?");
// 2. Optionally provide a 'to' param to direct the request at a specific user
params.putString("to", "515768651");  // Phil
showDialogWithoutNotificationBar("apprequests", params);

推荐朋友

Bundle params = new Bundle();
params.putString("message", "I just smashed " + application.getScore() +
    " friends! Can you beat it?");
String [] suggestedFriends = {
    "695755709",
    "685145706",
    "569496010",
    "286400088",
    "627802916",
};
params.putString("suggestions", TextUtils.join(",", suggestedFriends));
showDialogWithoutNotificationBar("apprequests", params);

参考:http://developers.facebook.com/docs/tutorials/androidsdk/3.0/games/requests/

答案 1 :(得分:1)

在一些R& D之后,我开始知道编码部分一切正常。问题出在Facebook应用程序设置中。我做了以下事情来解决问题,

1.在原生Android应用程序部分中设置必填字段。

<强>我。包名称:您的Android项目的包名称。设置此字段有助于导航到您的应用程序的GooglePlay页面。

ii.Class Name :项目的启动器类。设置此项有助于打开应用程序的指定页面(如果已安装)。

iii.Key哈希:它用于安全检查以授权您的应用。

iv.Facebook登录:应启用。

v.Deep Linking :应启用。

2.在开发人员设置中设置Android Key Hash。