在浏览器或本机应用程序中正确打开Facebook页面链接IOS cordova

时间:2014-05-22 09:12:07

标签: javascript ios facebook cordova inappbrowser

关于这个类似主题的上一个问题并不适用于我,其中大多数都没有答案。

我想将用户带到点击按钮的Facebook页面。 更新的facebook安装在iPhone,最新的cordova安装,使用inappbrowser插件。 现在我的代码是

window.open('https://www.facebook.com/latechnologies', '_system','location=yes');

这完全适用于android。但在IOS链接被国家的Facebook应用程序捕获并带我到Facebook的墙使用而不是页面提要。这意味着它只需打开原生应用,但不要进入任何页面。

然后我搜索并尝试了一些建议

window.open('fb://facebook.com/latechnologies', '_system','location=yes');

window.open('fb://pages/latechnologies', '_system','location=yes');

window.open('fb://pages', '_system','location=yes');

他们都没有工作。每次进入用户墙。我怎样才能简单地将用户带到Facebook页面?原生应用或浏览器并不重要。只想将用户带到页面.....................

5 个答案:

答案 0 :(得分:8)

对于我使用Facebook页面ID而不是页面名称工作正常,例如。

window.open('https://www.facebook.com/1401408870089080', '_system');

答案 1 :(得分:2)

我知道这已经过时了,但我也有这个问题,接受的答案是通过浏览器,而不是通过FB应用程序。

答案= fb://profile/12323435435

在IOS页面上有'个人资料'

fb://profile/   - FOR IOS
fb://page/      - FOR ANDROID

    <a onclick="window.open('fb://profile/INSERT_FB_ID_HERE','_system')"> 
                                        Your text or button here </a>

您可以在此处找到FB个人资料或页面:https://findmyfbid.com

答案 2 :(得分:0)

打开MainViewController.m文件。

在@implementation之后和@end MainViewController之前插入此代码。

- (BOOL) webView:(UIWebView*)theWebView shouldStartLoadWithRequest:(NSURLRequest*)request navigationType:(UIWebViewNavigationType)navigationType
{
    NSURL *url = [request URL];

    // Intercept the external http requests and forward to Safari.app
    // Otherwise forward to the PhoneGap WebView
    if ([[url scheme] isEqualToString:@"http"] || [[url scheme] isEqualToString:@"https"]){
        [[UIApplication sharedApplication] openURL:url];
        return NO;
    }
    else {
        return [super webView:theWebView shouldStartLoadWithRequest:request navigationType:navigationType];
    }
}

答案 3 :(得分:0)

您需要安装一个插件才能打开应用: org.apache.cordova.inappbrowser 0.5.4&#34; InAppBrowser&#34;

之后你必须知道什么是Facebook页面ID,为此: https://graph.facebook.com/latechnologies

获取ID号并替换Fanpage的用户名: https://www.facebook.com/1382616721988023

在那所有......;)

像Jonas的答案!不同的方法! :)

答案 4 :(得分:0)

在尝试了几次迭代和上面的一些建议之后,以下代码对我有用。     window.open(&#39; fb:// pages /,&#39; _system&#39;);

以上内容旨在打开Facebook应用程序页面(如果已安装)。

当然,我已经安装了cordova inappbrowser插件。