Поиск…


Синтаксис

  1. // Метод canOpenURL проверяет, есть ли какое-либо приложение, которое может обрабатывать указанную схему URL.

  2. // Swift

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

  3. // Объектив-C

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

  4. // метод openURL пытается открыть ресурс, расположенный по URL-адресу. YES / true, если он был открыт иначе NO / false.

  5. // Swift

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

  6. // Объектив-C

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

параметры

параметр Имея в виду
aUrl экземпляр NSURL, в котором хранится встроенная или настраиваемая строка схемы

замечания

В iOS9 и выше ваше приложение должно указать любые схемы URL, которые он хочет запросить. Это делается путем добавления LSApplicationQueriesSchemes к Info.plist


iOS имеет встроенную поддержку схем tel , http / https , sms , mailto , facetime . Он также поддерживает HTTP-адреса для приложений Youtube , Maps и iTunes .

Примеры встроенных схем URL:

тел : tel://123456890 или tel:123456890

http : http://www.google.com

facetime : facetime://[email protected]

mailto : mailto://[email protected]

смс : sms://123456890 или sms:123456890

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

Карты :

  • Использование адреса: http://maps.apple.com/?address=1,Infinite+Loop,Cupertino,California

  • Использование координат: http://maps.apple.com/?ll=46.683155557,6.683155557

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

Примечание . Не все специальные символы поддерживаются в tel схеме (например, * или # ). Это делается из-за проблем с безопасностью, чтобы запретить пользователям несанкционированную переадресацию вызовов, поэтому в этом случае приложение « Phone не будет открыто.

Использование встроенной схемы URL для открытия приложения «Почта»

Swift:

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");
}

Схемы URL-адресов Apple

Это схемы URL, поддерживаемые родными приложениями в iOS, OS X и watchOS 2 и более поздних версиях.

Открытие ссылки в Safari:

Objective-C

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

Swift:

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

Запуск телефонного разговора

Objective-C

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

Swift:

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>

Запуск сеанса FaceTime

Objective-C

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

Swift:

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>

Открытие сообщений Приложение для составления смс получателю:

Objective-C

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

Swift:

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>

Открытие приложения Mail для составления письма получателю:

Objective-C

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

Swift:

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

HTML

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

Вы также можете указать поле темы, сообщение и несколько получателей в полях To, Cc и Bcc. (В iOS атрибут from игнорируется.) В следующем примере показан URL-адрес mailto, который включает в себя несколько разных атрибутов:

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

Примечание. Диалоговое окно создания электронной почты также может быть представлено в приложении с помощью MFMailComposeViewController .



Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow