页面选项卡应用程序中的活动 - 没有画布

时间:2012-07-16 10:38:20

标签: facebook android-activity tabs

有没有办法从页面标签应用程序发布活动?

我设法发布活动,但必须将应用程序配置为Facebook上的应用程序(使用画布)。 这意味着该应用程序的链接是 http://apps.facebook.com / ... - 我只希望该链接位于页面选项卡应用程序上。

谢谢!

1 个答案:

答案 0 :(得分:2)

在您的Facebook应用设置中,设置页面标签网址和安全页面标签网址。然后使用此对话框将应用程序添加到您的Facebook页面:https://www.facebook.com/dialog/pagetab?app_id=YOUR_APP_ID&redirect_uri=YOUR_PAGE_TAB_URL

<强>更新
我建议你做一个重定向。您可以使用以下函数(PHP)检查应用程序是否显示在页面选项卡中:

function referrerIsFacebookCanvasApp() {
    if (stripos($_SERVER['HTTP_REFERER'], "apps.facebook.com") === true) {
        return true;
    }
    return false;
}

但要小心 - 引荐来源标题可以伪造。

更新2 (根据您的最新评论): 我想解决问题的唯一方法是将动作ID与页面的页面ID一起存储,动作已经发布,然后读取GET请求参数,这些参数传递如下:

https://apps.facebook.com/YOUR_APP_NAMESPACE/?fb_source=timeline_og&fb_action_ids=THE_ACTION_ID&fb_action_types=YOUR_APP_NAMESPACE%3ADO_SOMETHING& ...

或者

http://www.facebook.com/l.php?u=https://YOUR_SITE.com/?type=OBJECT_TYPE&locale=en_US&title=TITLE&image=thumb.png&description=DESCRIPTION&fb_action_ids=ACTION_ID&fb_action_types=YOUR_APP_NAMESPACE%3ADO_SOMETHING&fb_source=aggregation&fb_aggregation_id=AGGREGATION_ID& ...

(你应该可以通过阅读parent.location)来做到这一点 然后相应地重定向。