我已在我的应用程序中添加了自定义URL Scehme。喜欢myapp://
所以只要它检测到myapp:// http://google.com。它应该重定向到我的应用程序。以及webview上的URL。
在Appdelegate:
- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url {
NSString *strURL = [url.absoluteString stringByReplacingOccurrencesOfString:@"myapp://" withString:@""];
WebViewController *objWebView = [[WebViewController alloc] initWithNibName:@"WebViewController" bundle:nil] ;
objWebView.url=strURL;
[[[UIApplication sharedApplication]keyWindow].rootViewController presentViewController:objWebView animated:YES completion:NULL];
return YES;
}
但是当我用该URL加载请求时。它在该URL之前附加file://如何在Web视图中加载URL。
NSURL *targetURL = [NSURL URLWithString:self.url];
NSURLRequest *request = [NSURLRequest requestWithURL:targetURL];
NSLog(@"%@",request.URL); // O/P : htpp//google.com
ON shouldStartLoadWithRequest
-(BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType{
{
NSLog(@"%@",request.URL); file://htpp//google.com
return true;
}
最后它失败并显示错误
错误域= NSURLErrorDomain代码= -1100“请求的URL不是 在这台服务器上找到。“UserInfo = 0x7983bb30 {NSErrorFailingURLStringKey =文件://htpp//google.com, NSErrorFailingURLKey =文件://htpp//google.com, NSLocalizedDescription =未找到请求的URL server。,NSUnderlyingError = 0x78fbbe70“找不到请求的URL 在这台服务器上。“}
答案 0 :(得分:1)
您的网址错误。什么是htpp//google.com
?它应该是http://google.com