2012-01-06 3 views

Répondre

59

iOS 10 a introduit une nouvelle méthode pour ouvrir une URL, voir ci-dessous:

Swift 3:

let url = URL(string:"http://www.booleanbites.com") 
if #available(iOS 10.0, *) { 
    UIApplication.shared.open(url!, options: [:], completionHandler: nil) 
} else { 
    // Fallback on earlier versions 
    UIApplication.shared.openURL(url!) 
} 

Objectif C:

NSURL *url = [NSURL URLWithString:@"http://www.booleanbites.com"]; 

if ([[UIApplication sharedApplication] respondsToSelector:@selector(openURL:options:completionHandler:)]) { 
    [[UIApplication sharedApplication] openURL:url options:@{} completionHandler:NULL]; 
}else{ 
    // Fallback on earlier versions 
    [[UIApplication sharedApplication] openURL:url]; 
} 
+0

OK. Merci Adil. – Arun

+8

Votre lien «some search» pointe vers «phonegap android home button pressé».La question est sur l'application iOS avec bouton pour ouvrir la page d'accueil facebook sur le navigateur par défaut. Je ne vois pas de connexion? – JOM

8
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"http://www.facebook.com"]]; 
4

Lorsque vous ouvrez le défaut de l'iPhone navigateur, votre application arrive à l'arrière-plan - éventuellement terminée par iOS. Est-ce vraiment ce que tu veux? L'utilisateur n'a aucun moyen de revenir à votre application.

couple d'options à considérer:

  • Facebook Intégrer bibliothèque iOS dans votre application. Beaucoup de codage, puisque vous devez écrire du code d'interface utilisateur pour supporter l'intégration. D'autre part, il est votre application et vous avez un certain contrôle sur ce qui se passe et comment réagir aux actions des utilisateurs

https://github.com/facebook/facebook-ios-sdk

  • Intégrer navigateur dans votre application et « ouvrir le navigateur » dans votre application. Encore une fois, vous avez un certain contrôle sur ce qui se passe et ce qu'il faut faire à ce sujet

http://developer.apple.com/library/ios/#documentation/uikit/reference/UIWebView_Class/

Le point est le suivant: il est votre application. Pourquoi forcerais-tu l'utilisateur à fermer ton application et commencer à utiliser autre chose sans aucun moyen de revenir?

Eh bien, vous connaissez tous les détails et en fonction de ceux que vous voulez le navigateur par défaut. C'est bon.

+0

Merci JOM. Maintenant, je l'ai compris correctement. Merci – Arun

2
Swift: iOS 

var url:NSURL? = NSURL(string:webLink!) 
UIApplication.sharedApplication().openURL(url!) 
3

Swift

UIApplication.sharedApplication().openURL(NSURL(string:"http://www.facebook.com")!) 

Dans l'objectif C

[[UIApplication sharedApplication] openURL:[NSURL   
URLWithString:@"http://www.facebook.com"]]; 
1

Swift 3:

let url = URL(string: "http://www.example.com")!   
if UIApplication.shared.canOpenURL(url) { 
    UIApplication.shared.open(url, options: [:], completionHandler: nil) 
} 

Si vous souhaitez ajouter un completionHandler:

OpenUrl est déprotégé, utilisez le code suivant:
let url = URL(string: "http://www.example.com")!   
if UIApplication.shared.canOpenURL(url) { 
    UIApplication.shared.open(url, options: [:], completionHandler: { (success) in 
     print("success!") // do what you want 
    }) 
} 
1

NSURL *url = [NSURL URLWithString:@"https://google.com"]; 
[[UIApplication sharedApplication] openURL:url options:@{} completionHandler:nil]; 
Questions connexes