Question

I have a uiwebview I open http://google.com in it. Then I type something in google search bar and search for something. I want to get that updated url that is generated as a result of my search on google.

- (void)viewDidLoad
{
    [super viewDidLoad];
    [self setUrlAddress:@"http://google.com.pk"];
    // Do any additional setup after loading the view from its nib.
    NSURL *url = [NSURL URLWithString:self.urlAddress];
    //URL Requst Object
    NSURLRequest *requestObj = [NSURLRequest requestWithURL:url];
    //Load the request in the UIWebView.
    [self.webView setScalesPageToFit:YES];
    [self.webView loadRequest:requestObj];


}

- (void)webViewDidStartLoad:(UIWebView *)webView{
    [appDelegate showActivityView:self.view];
}

- (void)webViewDidFinishLoad:(UIWebView *)webView{
    [appDelegate hideActivityView];
}
Was it helpful?

Solution

Try this

NSString *currentURL = [webView stringByEvaluatingJavaScriptFromString:@"window.location.href"];

Hope it will work for you

OTHER TIPS

Below is a correct answer but its not perfectly working for Facebook and youtube

NSSTRing * currentURL = webView.request.URL.absoluteString;

If anyone knows a better answer, please share.

- (void)viewDidLoad
{
    [super viewDidLoad];
    NSString *urlAddress = [NSString stringWithFormat:@"http://www.google.com/pk];
//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];

}

try this delegate method :

- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType;

you can get hold of request and nslog that request .

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top