Cela peut être une question assez évidente, mais pouvez-vous lancer le navigateur Safari à partir d'une application iPhone?
Cela peut être une question assez évidente, mais pouvez-vous lancer le navigateur Safari à partir d'une application iPhone?
Réponses:
devrait être le suivant:
NSURL *url = [NSURL URLWithString:@"http://www.stackoverflow.com"];
if (![[UIApplication sharedApplication] openURL:url]) {
NSLog(@"%@%@",@"Failed to open url:",[url description]);
}
UIApplication a une méthode appelée openURL:
exemple:
NSURL *url = [NSURL URLWithString:@"http://www.stackoverflow.com"];
if (![[UIApplication sharedApplication] openURL:url]) {
NSLog(@"%@%@",@"Failed to open url:",[url description]);
}
vous pouvez ouvrir l'url dans safari avec ceci:
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"https://www.google.com"]];
Avec iOS 10, nous avons une méthode différente avec le gestionnaire de complétion :
Objectif c:
NSDictionary *options = [NSDictionary new];
//options can be empty
NSURL *url = [NSURL URLWithString:@"http://www.stackoverflow.com"];
[[UIApplication sharedApplication] openURL:url options:options completionHandler:^(BOOL success){
}];
Rapide:
let url = URL(string: "http://www.stackoverflow.com")
UIApplication.shared.open(url, options: [:]) { (success) in
}
Peut-être que quelqu'un peut utiliser la version Swift:
Dans Swift 2.2:
UIApplication.sharedApplication().openURL(NSURL(string: "https://www.google.com")!)
Et 3.0:
UIApplication.shared().openURL(URL(string: "https://www.google.com")!)
Dans swift 4 et 5, comme OpenURL est déprécié, un moyen simple de le faire serait simplement
if let url = URL(string: "https://stackoverflow.com") {
UIApplication.shared.open(url, options: [:])
}
Vous pouvez également utiliser SafariServices
. Quelque chose comme une fenêtre Safari dans votre application.
import SafariServices
...
if let url = URL(string: "https://stackoverflow.com") {
let safariViewController = SFSafariViewController(url: url)
self.present(safariViewController, animated: true)
}
Dans Swift 3.0, vous pouvez utiliser cette classe pour vous aider à communiquer avec. Les responsables du framework ont déconseillé ou supprimé les réponses précédentes.
importer UIKit class InterAppCommunication { static func openURI (_ URI: String) { UIApplication.shared.open (URL (string: URI) !, options: [:], completionHandler: {(succ: Bool) in print ("Complete! Success? \ (Succ)")}) } }