Esto podría ser más bien una pregunta obvia, pero puede que inicie el navegador Safari de una aplicación para el iPhone?

InformationsquelleAutor keuminotti | 2009-05-04

7 Comentarios

  1. 201

    debe ser el siguiente :

    NSURL *url = [NSURL URLWithString:@"http://www.stackoverflow.com"];
    
    if (![[UIApplication sharedApplication] openURL:url]) {
        NSLog(@"%@%@",@"Failed to open url:",[url description]);
    }
    • Se esta cuenta para su aplicación en el uso de la memoria? Además, ¿hay una buena manera de volver a su aplicación (como la función de inicio de sesión en sitios de redes sociales)?
    • Nada está siendo duro alloc-ed aquí, así que es automáticamente configurado para grupo de liberación automática.
    • mi conjetura sería no como supongo el «webview» es lanzado en el safari de la aplicación, por lo que entrarían en ese proceso
    • Hola hay alguna manera de que pueda abrir un enlace en el navegador web safari con javascript?? Como enviar una etiqueta link en mi web, la vista y la apertura de un navegador web safari
    • ¿Alguien puede contestar a la pregunta del título? es decir, ¿cómo hace uno para abrir safari desde una aplicación (en un dispositivo)? Sólo safari aplicación, no es una dirección dentro de safari de la aplicación. Al llamar a @»http://» abre una nueva ficha en blanco en el safari de la aplicación.
    • Abrir dirección url es útil porque NO devuelve si una restricción paterna está activado para Safari de la aplicación. En una de mis aplicaciones me encontré con que una de mis rutas de código introducido un error, no a la manipulación de este comportamiento.
    • engañar a la de anteriores 5/9/09 respuesta
    • No exactamente, en realidad, porque that un 9/21/09 respuesta
    • IMO la llamada a la API es suficientemente similar como para que esta respuesta habría sido mejor aplicada como una edición o un comentario en la respuesta anterior.

  2. 53

    UIApplication tiene un método llamado openURL:

    ejemplo:

    NSURL *url = [NSURL URLWithString:@"http://www.stackoverflow.com"];
    
    if (![[UIApplication sharedApplication] openURL:url]) {
        NSLog(@"%@%@",@"Failed to open url:",[url description]);
    }
  3. 16

    puede abrir la url en safari con este:

    [[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"https://www.google.com"]];
  4. 4

    Con iOS 10 tenemos un método diferente con controlador de finalización:

    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){
    }];

    Swift:

    let url = URL(string: "http://www.stackoverflow.com")
    UIApplication.shared.open(url, options: [:]) { (success) in
    }
  5. 2

    Tal vez alguien puede usar el Swift versión:

    En swift 2.2:

    UIApplication.sharedApplication().openURL(NSURL(string: "https://www.google.com")!)

    Y 3.0:

    UIApplication.shared().openURL(URL(string: "https://www.google.com")!)
  6. 1

    En Swift 3.0, puede utilizar esta clase para ayudar a que usted se comunica. El marco de los mantenedores han quedado obsoletas o eliminado las anteriores respuestas.

    de importación UIKit 
    
    clase InterAppCommunication { 
    estática func openURI(_ URI: String) { 
    UIApplication.compartida.open(URL(string: URI)!, opciones: [:], completionHandler: { (succ: Bool) en print("Complete! El éxito? \(succ)") }) 
    } 
    }
  7. 1

    En swift 4, como OpenURL se deprecia, una manera fácil de hacerlo sería

    if let url = URL(string: "https://stackoverflow.com") {
    UIApplication.shared.open(url, options: [:]) }
    • Mientras este fragmento de código se puede resolver la cuestión, , incluyendo una explicación de ayuda a mejorar la calidad de su respuesta. Recuerde que usted está respondiendo a la pregunta para los lectores en el futuro, y esas personas pueden no saber las razones de su sugerencia de código.

Dejar respuesta

Please enter your comment!
Please enter your name here