2

在我的 Android 应用程序中,我正在尝试实现一个简单的“Like Button”功能。

我们已经从同一个应用程序执行了 Facebook 登录。我们还在 App 的仪表板上创建了一个 Open Graph Like 动作和一个 Link 对象。

这是我们用来发布类似内容的代码。

public static void likeFacebookPage(Context context,String pageUrl)
{
    Bundle params = new Bundle();
    params.putString("object",pageUrl);
    Request request = new Request(
        Session.getActiveSession(),
        "me/og.likes",
        params,
        HttpMethod.POST
    );
    Response response = request.executeAndWait();
    // handle the response

}

pageUrl参数中,我们有:

http://www.facebook.com/<object_id>

object_id ”是我们在 Open Graph 中创建的链接对象的 ID。

执行上述方法后,收到的响应对象如下:

{Response:  responseCode: 200, graphObject: null, error: {HttpStatus: -1, errorCode: -1, errorType: null, errorMessage: null}, isFromCache:false}

但是 Like 计数没有更新,导致我们相信这个过程不起作用。

我们还在我们的代码和应用仪表板上包含了权限“ publish_actions ”和“ user_likes ”。

请帮助我们配置此功能。

提前致谢。

4

1 回答 1

0

如此处所述https://developers.facebook.com/docs/reference/api/publishing/您使用 publish_actions 和 publish_stream 权限向对象发布点赞:

    Bundle postParams = new Bundle();
    Request request = new Request(Session.getActiveSession(),
            FB_OBJECT_ID+"/likes", postParams, HttpMethod.POST, new Callback() {

                @Override
                public void onCompleted(Response response) {

                }
            });
    RequestAsyncTask task = new RequestAsyncTask(request);
    task.execute();

您的 FB_OBJECT_ID 只是对象的 ID。即,如果你想喜欢一张照片,FB_OBJECT_ID 将是 pid。对于专辑,FB_OBJECT_ID 将是帮助。

于 2013-09-09T10:01:47.573 回答