Sök…


Syntax

  1. // canOpenURL- metoden verifierar om det finns någon app som kan hantera angivet URL-schema.

  2. // Snabb

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

  3. // Mål-C

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

  4. // openURL- metoden försöker öppna en resurs som ligger via URL. JA / sant om det öppnades annars INGEN / falskt.

  5. // Snabb

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

  6. // Mål-C

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

parametrar

Parameter Menande
AURL en NSURL-instans som lagrar en inbyggd eller anpassad schematsträng

Anmärkningar

I iOS9 och högre måste din app lista alla URL-scheman den vill fråga. Detta görs genom att lägga till LSApplicationQueriesSchemes till Info.plist


iOS har inbyggt stöd för tel , http / https , sms , mailto , facetime scheman. Det stöder också http-baserade webbadresser för Youtube , Maps och iTunes appar.

Exempel på inbyggda URL-scheman:

tel : tel://123456890 eller tel:123456890

http : http://www.google.com

facetime : facetime://[email protected]

mailto : mailto://[email protected]

sms : sms://123456890 eller sms:123456890

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

Kartor :

  • Använda adress: http://maps.apple.com/?address=1,Infinite+Loop,Cupertino,California

  • Använda koordinater: http://maps.apple.com/?ll=46.683155557,6.683155557

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

Obs : Inte alla specialtecken stöds i tel schema (till exempel * eller # ). Detta sker på grund av säkerhetsproblem för att hindra användare från obehörig redirect samtal, så i detta fall Phone app inte öppnas.

Använda inbyggt URL-schema för att öppna Mail-appen

Snabb:

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

Objective-C:

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

Apple URL-scheman

Dessa är URL-scheman som stöds av ursprungliga appar på iOS, OS X och watchOS 2 och senare.

Öppningslänk i Safari:

Objective-C

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

Snabb:

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

Starta ett telefonsamtal

Objective-C

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

Snabb:

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>

Starta en FaceTime-konversation

Objective-C

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

Snabb:

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>

Öppna meddelanden App för att komponera ett sms till mottagaren:

Objective-C

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

Snabb:

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>

Öppna Mail-appen för att skriva ett e-postmeddelande till mottagaren:

Objective-C

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

Snabb:

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

html

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

Du kan också inkludera ett ämnesfält, ett meddelande och flera mottagare i fälten To, Cc och Bcc. (I iOS ignoreras från-attributet.) Följande exempel visar en mailto-URL som innehåller flera olika attribut:

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

Obs: Skriv e-postdialogrutan kan också presenteras i appen med hjälp av MFMailComposeViewController .



Modified text is an extract of the original Stack Overflow Documentation
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow