Buscar..


Sintaxis

  1. // El método canOpenURL verifica si hay alguna aplicación que pueda manejar el esquema de URL indicado.

  2. // Swift

    UIApplication.sharedApplication (). CanOpenURL (_ aUrl: NSURL)

  3. // C objetivo

    [[UIApplication sharedApplication] canOpenURL: (NSURL *) aUrl];

  4. // El método openURL intenta abrir un recurso ubicado por URL. SÍ / verdadero si se abrió de otro modo NO / falso.

  5. // Swift

    UIApplication.sharedApplication (). OpenURL (_ aUrl: NSURL)

  6. // C objetivo

    [[UIApplication sharedApplication] openURL: (NSURL *) aUrl];

Parámetros

Parámetro Sentido
todo una instancia de NSURL que almacena una cadena de esquema incorporada o personalizada

Observaciones

En iOS9 y superior, su aplicación debe enumerar los esquemas de URL que desee consultar. Esto se hace agregando LSApplicationQueriesSchemes a Info.plist


iOS tiene soporte incorporado para los esquemas de tel , http / https , sms , mailto , facetime . También admite URL basadas en http para aplicaciones de Youtube , Maps e iTunes .

Ejemplos de esquemas de URL incorporados:

tel : tel://123456890 o tel:123456890

http : http://www.google.com

facetime : facetime://[email protected]

mailto : mailto://[email protected]

sms : sms://123456890 o sms:123456890

Youtube : https://www.youtube.com/watch?v=-eCaif2QKfA

Mapas :

  • Usando la dirección: http://maps.apple.com/?address=1,Infinite+Loop,Cupertino,California

  • Uso de coordenadas: http://maps.apple.com/?ll=46.683155557,6.683155557

iTunes : https://itunes.apple.com/us/artist/randy-newman/id200900

Nota : No todos los caracteres especiales son compatibles con el esquema de tel (por ejemplo, * o # ). Esto se hace debido a preocupaciones de seguridad para evitar que los usuarios redireccionen llamadas no autorizadas, por lo que en este caso, la aplicación del Phone no se abrirá.

Usando el esquema de URL incorporado para abrir la aplicación Mail

Rápido:

if let url = URL(string: "mailto://[email protected]") {
    if UIApplication.shared.canOpenURL(url) {
        UIApplication.shared.openURL(url)
    } else {
        print("Cannot open URL")
    }
}

C objetivo:

NSURL *url = [NSURL URLWithString:@"mailto://[email protected]"];
if ([[UIApplication sharedApplication] canOpenURL:url]) {
    [[UIApplication sharedApplication] openURL:url];
} else {
    NSLog(@"Cannot open URL");
}

Esquemas de URL de Apple

Estos son esquemas de URL admitidos por aplicaciones nativas en iOS, OS X y watchOS 2 y posteriores.

Abrir enlace en Safari:

C objetivo

NSString *stringURL = @"http://stackoverflow.com/";
NSURL *url = [NSURL URLWithString:stringURL];
[[UIApplication sharedApplication] openURL:url];

Rápido:

let stringURL = "http://stackoverflow.com/"
if let url = URL(string: stringURL) {
    UIApplication.shared.openURL(url)
}

Comenzando una conversación telefónica

C objetivo

NSString *stringURL = @"tel:1-408-555-5555";
NSURL *url = [NSURL URLWithString:stringURL];
[[UIApplication sharedApplication] openURL:url];

Rápido:

let stringURL = "tel:1-408-555-5555"
if let url = URL(string: stringURL) {
    UIApplication.shared.openURL(url)
}

HTML

<a href="tel:1-408-555-5555">1-408-555-5555</a>

Comenzando una conversación de FaceTime

C objetivo

NSString *stringURL = @"facetime:14085551234";
NSURL *url = [NSURL URLWithString:stringURL];
[[UIApplication sharedApplication] openURL:url];

Rápido:

let stringURL = "facetime:14085551234"
if let url = URL(string: stringURL) {
    UIApplication.shared.openURL(url)
}

HTML

<a href="facetime:14085551234">Connect using FaceTime</a>
<a href="facetime:[email protected]">Connect using FaceTime</a>

Apertura de la aplicación Messages para componer un sms al destinatario:

C objetivo

NSString *stringURL = @"sms:1-408-555-1212";
NSURL *url = [NSURL URLWithString:stringURL];
[[UIApplication sharedApplication] openURL:url];

Rápido:

let stringURL = "sms:1-408-555-1212"
if let url = URL(string: stringURL) {
    UIApplication.shared.openURL(url)
}

HTML

<a href="sms:">Launch Messages App</a>
<a href="sms:1-408-555-1212">New SMS Message</a>

Apertura de la aplicación Mail para redactar un correo electrónico al destinatario:

C objetivo

NSString *stringURL = @"mailto:[email protected]";
NSURL *url = [NSURL URLWithString:stringURL];
[[UIApplication sharedApplication] openURL:url];

Rápido:

let stringURL = "mailto:[email protected]"
if let url = URL(string: stringURL) {
    UIApplication.shared.openURL(url)
}

HTML

<a href="mailto:[email protected]">John Frank</a>

También puede incluir un campo de asunto, un mensaje y varios destinatarios en los campos Para, Cc y Cco. (En iOS, se ignora el atributo from). El siguiente ejemplo muestra una URL mailto que incluye varios atributos diferentes:

mailto:[email protected][email protected]&subject=Greetings%20from%20Cupertino!&body=Wish%20you%20were%20here!

Nota: El diálogo de MFMailComposeViewController correo electrónico también se puede presentar dentro de la aplicación usando MFMailComposeViewController .



Modified text is an extract of the original Stack Overflow Documentation
Licenciado bajo CC BY-SA 3.0
No afiliado a Stack Overflow