我想在我的webView中打开iTunes链接,但是当webView启动页面时,它会重定向到Safari浏览器。在那里,网址被打开了,但我希望它在我的webView中打开。
- (void)viewDidLoad {
NSString *urlAddress = @"http://itunes.apple.com/us/app/foodcheck-traffic-light-nutrition/id386368933?mt=8";
//Create a URL object.
NSURL *url = [NSURL URLWithString:urlAddress];
//URL Requst Object
NSURLRequest *requestObj = [NSURLRequest requestWithURL:url];
//Load the request in the UIWebView.
[webView loadRequest:requestObj];
[super viewDidLoad];
}
请建议一种解决此问题的方法。
答案 0 :(得分:1)
您可能希望在运行应用时尝试记录加载请求。 Apple可能会自动将http://
更改为itms-apps
或http://phobos
或沿此行更改某些内容。如果是这样,那么你可以使用以下内容阻止加载:
- (BOOL)webView:(UIWebView *)webView
shouldStartLoadWithRequest:(NSURLRequest *)request
navigationType:(UIWebViewNavigationType)navigationType;
{
NSURL *loadURL = [[request URL] retain];
NSLog(@"%@",loadURL);
if([[loadURL absoluteString] hasPrefix:@"http://"])
{
[loadURL release];
return TRUE;
}
[loadURL release];
return FALSE;
}
祝你好运。我很想知道最终会有什么用。
答案 1 :(得分:1)
注意:如果你有iTunes链接 一个UIWebView,你可以使用它 拦截链接后的技术 使用
-[UIWebViewDelegate webView:shouldStartLoadWithRequest:navigationType:]
委托方法。
答案 2 :(得分:0)
不确定你是否使用它,但这对我很有用:
NSString *responseString = [NSString stringWithContentsOfURL:myURL];
[self.webView loadHTMLString:responseString baseURL: nil)];