Facebook通知重定向到外部URL

时间:2013-09-05 20:49:43

标签: android ios facebook flex air

我们正在努力为通过Flex开发的网站和使用Adobe Air开发的移动应用程序实施一个简单的解决方案。

1)我们的用户希望通过www.ourwebsite.com以及我们的网站 android,ios&黑莓应用程序。 2)我们想要使用Facebook Requests对话框,该对话框允许用户选择他们的朋友并一次发送多个邀请 3)当收件人点击他收到的通知时

  • 如果是网络,则应将通知收件人指向www.ourwebsite.com
  • 如果是移动应用,它应该重定向到相应的appstore下载我们的应用。

我们尝试了几种配置,但它不适用于我们。

如前所述,我们使用Adobe Flex开发了我们的网站,我们的移动应用程序使用Adobe Air运行。我们是否需要在我们的代码中安装Facebook原生SDK?

奇怪的是,完全相同的要求适用于www.naaptol.com和9lessons.info。 但我们无法实现相同的技术。 任何人都可以指导我们或建议我们是否遗漏了Facebook App&amp ;;它的政策。

谢谢。 Sai Krishna

1 个答案:

答案 0 :(得分:0)

因此,如果我认为我理解这一点,您希望能够根据他们所处的平台以不同方式打开链接。这里有一些js将为ios和android做。如果他们安装了您的应用,则会启动该应用,否则会将其发送到应用商店

// if iPod / iPhone, display install app prompt
if (navigator.userAgent.match(/(iPhone|iPod|iPad);?/i) || navigator.userAgent.match(/android/i)) {

var store_loc = "itms://itunes.com/apps/youriOSApp";
var href = "yourPrefix://";

var is_android = false;

if (navigator.userAgent.match(/android/i)) {
    store_loc = "https://play.google.com/store/apps/details?id=air.com.your.app";
    is_android = true;
}
var app_loc = href;
if (is_android) {
    var w = null;
    try {
        w = window.open(app_loc, '_blank');
    } catch (e) {
        //   no exception
    }
    if (w) {
        window.close();
    } else {
        window.location = store_loc;
    }
} else {
    var timeout = null;
    window.location.replace(app_loc);
    timeout = setTimeout(function () {
        "use strict";
        window.location = store_loc;
    }, 300);
    onblur = function () {
        "use strict";
        clearTimeout(timeout);
    };
}

}