如何在Safari上单击搜索后获取结果URL

时间:2014-03-03 09:03:16

标签: ios objective-c cocoa safari

我这里有一个iPad应用程序。它在应用程序中使用safari打开http链接。

我使用此命令打开http链接:

[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:strURL]

例如,当我输入搜索字符串时,“cocoa”就像google.com搜索框一样,它会返回https://www.google.com.sg/?gfe_rd=cr&ei=nUQUU_ebMcqM8Qe-1oDwAw#q=cocoa

如何从我的iOS应用程序中获取上面的结果URL?

1 个答案:

答案 0 :(得分:0)

我使用了UIWebview委托方法并实现了:

- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType
switch (navigationType) {
        case 0:
            NSLog(@"UIWebViewNavigationTypeLinkClicked:");
            strNewURL = [request.URL absoluteString];
            break;
        case 1:
            NSLog(@"UIWebViewNavigationTypeFormSubmitted:");
            strNewURL = [request.URL absoluteString];
            break;
        case 2:
            NSLog(@"UIWebViewNavigationTypeBackForward:");
            break;
        case 3:
            NSLog(@"UIWebViewNavigationTypeReload:");
            break;
        case 4:
            NSLog(@"UIWebViewNavigationTypeFormResubmitted:");
            break;
        case 5:
            NSLog(@"UIWebViewNavigationTypeOther:");
            break;

        default:
            break;
    }

如果我要在我的应用内搜索safari,则会调用此方法UIWebViewNavigationTypeFormSubmitted,我只需要使用[request.URL absoluteString]提取网址