2014-05-22 16 views
5

關於此類似主題的上一個問題對我來說不起作用,其中大部分都沒有答案。正確地在瀏覽器或原生應用中打開Facebook頁面鏈接IOS cordova

我想通過點擊按鈕將用戶帶到臉書頁面。 更新的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頁面?本機應用程序或瀏覽器無關緊要。只想把用戶帶到頁面.....................

+0

你是科爾多瓦版嗎? – kathir

+0

@kathir cordova 3.4.1 – AtanuCSE

回答

9

對我來說,使用Facebook頁面ID代替頁面名稱可以正常工作,例如,

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

這隻適用於數字ID,這裏有一個工具,你可以用它來獲得該ID:http://findmyfacebookid.com/ –

+1

在瀏覽器中打開;不在FB應用程序中。 –

+0

當facebook應用程序可用時,它停止工作。任何建議?嘗試過'fb:// pages/1401408870089080',但無法正常工作。 –

1

打開你的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]; 
    } 
} 
1

你需要安裝一個插件來打開的應用程序: org.apache.cordova.inappbrowser 0.5.4「InAppBrowser」

之後,你一定要知道什麼是Facebook的網頁ID,此: https://graph.facebook.com/latechnologies

取的ID號和替換粉絲專頁的用戶名: https://www.facebook.com/1382616721988023

在這一切...;)

贊Jonas的回答!不同的方法! :)

+0

你不覺得你的答案和喬納斯的回答完全一樣! – AtanuCSE

+0

對不起,我試圖幫助你。 :)如果你知道InAppBrowser插件,我會刪除我的amswer。祝你今天愉快! –

1

在嘗試了幾次迭代以及上面的幾條建議之後,以下代碼適用於我。 window.open('fb:// pages /,'_system');

以上是打算在Facebook應用程序(如果它安裝)打開頁面。

Ofcourse,我已經安裝了cordova inappbrowser插件。

相關問題