2011-08-31 61 views
3

我想加載一個外部網站,而不是在PhoneGap的www文件夾中找到的內部index.html文件..但一直沒有成功。我已經嘗試了幾個我在網上找到的東西,但他們都只是在封裝器中加載外部鏈接而不是Safari。PhoneGap加載外部頁面,而不是index.html

這不是我正在尋找的...我正在尋找phonegap應用程序加載時,它加載了託管在我的web服務器上的頁面而不是index.html文件。

回答

0

在iOS中,你需要修改你的AppDelegate.m文件shouldStartLoadWithRequest方法:

- (BOOL)webView:(UIWebView *)theWebView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType 
{ 
    NSURL *url = [request URL]; 
    if ([ [url scheme] isEqualToString:@"http"] || [ [url scheme] 
                isEqualToString:@"https"]) 
    { 
     return YES; 

    } else { 

     return [ super webView:theWebView shouldStartLoadWithRequest:request 
       navigationType:navigationType]; 
    } 
} 

然後,你可以有變化,你當地的index.html在WWW文件夾:

<html> 
<body onload="document.location.href='http://yourComputerIpOrServer/index.html';"> 
<h1>Loading....</h1> 
</body> 
</html> 

當然,這僅用於調試。你不應該把它提交給AppStore,它是被禁止的,它將被拒絕。

+0

你可以在PhoneGap中做到這一點.plist通過將OpenAllWhitelistURLsInWebView切換爲YES並將您的域添加爲外部主機。 – jocull

0

相當確定這是設計。大多數應用程序商店都需要批准應用程序。如果您動態加載應用程序,則無法控制它。

Example discussion of this on the mailing list

+0

有一定的辦法..我見過很多應用程序做這樣的事情。 – dswatik

+0

我希望有 - 我對答案也很感興趣。 – Cymen

2

您可以在web視圖加載外部URL。確保設置

super.setBooleanProperty("loadInWebView", true); 

在你的onCreate()主類(它擴展DroidGap)的方法,然後你可以加載外部URL。

+0

我不是在尋找一個我有...的機器人解決方案,但做同樣的事情的iPhone版本...謝謝 – dswatik

相關問題