0

나는 단순한 UIWebView iOS 앱을 만들고 있습니다. 모바일 버전으로 표시하고자하는 웹 사이트가 정식 버전으로 표시되도록하려는 경우 해당 웹 사이트가 표시됩니다.UIWebview 디스플레이 모바일 페이지가 아닌 모바일 페이지

나는 viewDidLoad:

NSString *fullURL = @"www.facebook.com"; 
NSURL *url = [NSURL URLWithString:fullURL]; 
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"]; 
[self.webView loadRequest: request]; 

내가 찾아낸 주석 코드는 모바일 버전과 웹 사이트의 표시를 만드는에서이 코드가 있습니다. 아무도 내가 주석 행을 데스크톱 버전으로 바꿀 수있는 방법을 알고 있습니까? 주석 처리 된 행은 주석 처리 된 상태로 유지되지만 여전히 모바일 버전으로 실행됩니다.

정말 고맙습니다.

답변

1

HTTP 요청을위한 사용자 에이전트 : 예 : '@'Mozilla/5.0 (Mac OS X 10_6_8) AppleWebKit/537.13 + (Gecko와 같은 KHTML) 버전/5.1.7 Safari/534.57.2 ";

하지만 웹보기가 요청에 설정된 에이전트를 사용하지 않기 때문에 웹보기에서 작동하지 않습니다. 대신 NSUserDefaults의 에이전트를 사용합니다.

너무 :

NSString *secretagent = @"%%MyUserAgent%%"; //the one you chose 
NSDictionary *dictionary = [[NSDictionary alloc] initWithObjectsAndKeys:secretAgent, @"UserAgent", nil]; 
[[NSUserDefaults standardUserDefaults] registerDefaults:dictionary]; 

이 걸릴 효과를 얻기 위해, 당신이있는 UIWebView를로드하기 전에 그것을 할!

+0

제공된 사용자 에이전트는 OSX 10.6.8, safari 5.에서 가져 왔습니다. 하지만 구글은 당신이 더 나은 문자열을 찾을 수 있도록해야합니다 –

+0

아니, 괜찮아. 나는 그들이 무엇인지, 그들이 무엇을하고 있는지 전혀 모른다. 그래서 나는 지금 그들에 대한 연구를 조금 할 것이다! 고맙습니다! – falky

+1

나 자신을 노크 ;-) http://www.useragentstring.com/ –

관련 문제