我得到了我的uiwebview工作並顯示指定的網址。唯一的問題是,出現的網頁不是移動網頁,而是正常的網頁。移動Safari瀏覽器中的相同網址打開網頁的移動版本,但在我的應用程序中打開了正常版本。任何人都知道這個的原因?UIWebView不顯示手機網頁,但顯示正常的網頁
NSURL *url = [NSURL URLWithString:website];
[webview loadRequest: [NSURLRequest requestWithURL:url]];
我得到了我的uiwebview工作並顯示指定的網址。唯一的問題是,出現的網頁不是移動網頁,而是正常的網頁。移動Safari瀏覽器中的相同網址打開網頁的移動版本,但在我的應用程序中打開了正常版本。任何人都知道這個的原因?UIWebView不顯示手機網頁,但顯示正常的網頁
NSURL *url = [NSURL URLWithString:website];
[webview loadRequest: [NSURLRequest requestWithURL:url]];
UIWebView
不發送相同的瀏覽器標題爲Safari瀏覽器,因此Web服務器不知道要提供的頁面:如果多數民衆贊成任何幫助
這裏是我的代碼片段,我用故事板你的應用。
您可以添加自定義標題以嘗試修復問題。
NSURL *url = [NSURL URLWithString:website];
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url];
[request setValue:@"Mozilla/5.0 (iPhone; U; CPU like Mac OS X; en) AppleWebKit/420+ (KHTML, like Gecko) Version/3.0 Mobile/1A543a Safari/419.3" forHTTPHeaderField:@"User-Agent"];
[webview loadRequest: request];
你可以看到,如果有一個URL參數,您可以添加在這個特定的網站,因爲他們似乎並不決定顯示出移動的時候來檢查的UIWebView代理。
E.G.也許去www.theirsite.com?mobile = true會完成它。
這不是任何一種通用標準。只有當您知道某個特定網站使用該機制來顯示其網站的移動版本時,它纔會起作用。很確定大多數網站使用標題信息。 – 2012-12-21 00:58:38
感謝您的回覆。我嘗試了你的建議,但沒有奏效。這很奇怪。也許它與故事板有關? – 2012-02-27 15:25:41
它可能是你需要一個其他頭部告訴網絡服務器,它需要服務的移動版本的網站。你可以詢問網站建設者如何檢查服務器是否是移動網站。 – rckoenes 2012-02-27 15:28:40
謝謝,畢竟它確實工作。它適用於所有其他網站,而不是特定的網站。這是奇怪的,因爲它在移動safari中工作正常 – 2012-02-27 16:09:18