2013-03-12 6 views
0

Comment est-ce que je peux obtenir cette fonction fonctionnante si le lien est raccourci par le minuscule URL ou quelque chose de semblable? Il semble d'abord passer par le serveur url minuscule provoquant ainsi des mots-clés liés google à ne pas être lus.L'URL minuscule empêche la fonction de fonctionner

-(BOOL) webView:(UIWebView *)inWeb shouldStartLoadWithRequest:(NSURLRequest *)inRequest{ NSRange nameRange = [[inRequest.URL absoluteString] rangeOfString:@"google" options:NSCaseInsensitiveSearch]; 

if(nameRange.location == NSNotFound) 
{ 
    [[UIApplication sharedApplication] openURL:[inRequest URL]]; 
    return NO; 
} 
return YES; 
} 
+0

ce que vous voulez .. que vous voulez quand nous obtenons google puis ouvrez http://www.google.com – Rajneesh071

+0

Non, quand le mot-clé « google » apparaît lorsque vous cliquez sur un lien, il devrait être en mesure de le reconnaître et l'ouvrir dans l'application réelle dans une vue Web. S'il n'y a pas de mot-clé "google" alors il ouvrira safari à la place. Mais cela ne se produit pas lorsque le lien google est raccourci par une petite URL et autres. –

+0

vérifier ma réponse et pouvez-vous fournir NSLog de [inRequest.URL absoluteString] – Rajneesh071

Répondre

0

Pourquoi essayez-vous pas enlever if (inType == UIWebViewNavigationTypeLinkClicked) état, de sorte que vous pourrez attraper réoriente dans l'url. Voir le code ci-dessous.

-(BOOL) webView:(UIWebView *)inWeb shouldStartLoadWithRequest:(NSURLRequest *)inRequest navigationType:(UIWebViewNavigationType)inType { 
    if ([[inRequest.URL absoluteString] rangeOfString:@"google"].location==NSNotFound){ 
    [[UIApplication sharedApplication] openURL:[inRequest URL]]; 
     return NO; 
    } 
    return YES; 
} 
0

Utilisez cette

NSRange nameRange = [[inRequest.URL absoluteString] rangeOfString:@"google" options:NSCaseInsensitiveSearch]; 

      if(nameRange.location == NSNotFound) 
      { 
       [[UIApplication sharedApplication] openURL:[inRequest URL]]; 
       return NO; 
      } 
+0

Désolé pour la réponse tardive. J'ai mis à jour mon code et ne semble ouvrir aucun autre lien de mot-clé dans Safari. –

Questions connexes