Essa pode ser uma pergunta bastante óbvia, mas você pode iniciar o navegador Safari a partir de um aplicativo para iPhone?
Essa pode ser uma pergunta bastante óbvia, mas você pode iniciar o navegador Safari a partir de um aplicativo para iPhone?
Respostas:
deve ser o seguinte:
NSURL *url = [NSURL URLWithString:@"http://www.stackoverflow.com"];
if (![[UIApplication sharedApplication] openURL:url]) {
NSLog(@"%@%@",@"Failed to open url:",[url description]);
}
O UIApplication possui um método chamado openURL:
exemplo:
NSURL *url = [NSURL URLWithString:@"http://www.stackoverflow.com"];
if (![[UIApplication sharedApplication] openURL:url]) {
NSLog(@"%@%@",@"Failed to open url:",[url description]);
}
você pode abrir o URL no safari com isso:
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"https://www.google.com"]];
No iOS 10, temos um método diferente com o manipulador de conclusão :
ObjectiveC:
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){
}];
Rápido:
let url = URL(string: "http://www.stackoverflow.com")
UIApplication.shared.open(url, options: [:]) { (success) in
}
Talvez alguém possa usar a versão Swift:
No veloz 2.2:
UIApplication.sharedApplication().openURL(NSURL(string: "https://www.google.com")!)
E 3.0:
UIApplication.shared().openURL(URL(string: "https://www.google.com")!)
Nos swift 4 e 5, como o OpenURL é depreciado, uma maneira fácil de fazer isso seria apenas
if let url = URL(string: "https://stackoverflow.com") {
UIApplication.shared.open(url, options: [:])
}
Você também pode usar SafariServices
. Algo como uma janela do Safari no seu aplicativo.
import SafariServices
...
if let url = URL(string: "https://stackoverflow.com") {
let safariViewController = SFSafariViewController(url: url)
self.present(safariViewController, animated: true)
}
No Swift 3.0, você pode usar esta classe para ajudá-lo a se comunicar. Os mantenedores da estrutura preteriram ou removeram as respostas anteriores.
importar UIKit classe InterAppCommunication { função estática openURI (_ URI: String) { UIApplication.shared.open (URL (string: URI) !, opções: [:], conclusãoHandler: {(succ: Bool) na impressão ("Complete! Success? \ (Succ)")}) } }