Когда я смотрел видео с сессии WWDC 2015, "Представляем WatchKit для watchOS 2" (в 13:29) я увидел, что можно совершать телефонные звонки прямо на Apple Watch с помощью openSystem API. Как я могу использовать этот API в Swift?
Телефонный звонок от Apple Watch с openSystem API?
comment
Вы пытались найти документацию для openSystem API? Такие вещи обычно объясняются в документации по API.
- person Nick Volynkin   schedule 17.06.2015
Ответы (2)
Вы можете использовать openSystemURL
, доступный для общего объекта WKExtension
. Передайте URL-адрес tel:
этому методу, чтобы инициировать телефонный звонок.
if let telURL=NSURL(string:"tel:5553478") {
let wkExtension=WKExtension.sharedExtension()
wkExtension.openSystemURL(telURL)
}
person
Paulw11
schedule
14.06.2015
Я поместил его в IBAction, и ничего не происходит, когда я касаюсь кнопки.
- person dev; 14.06.2015
Вы установили точку останова, чтобы убедиться, что код вызывается и что URL-адрес не равен нулю?
- person Paulw11; 14.06.2015
Теперь он вылетает после того, как показывает индикатор загрузки.
- person dev; 14.06.2015
Мой код:
@IBAction func phoneCall() { if let telURL=NSURL(string:"tel:5553478") { let wkExtension=WKExtension.sharedExtension() wkExtension.openSystemURL(telURL) } }
- person dev; 14.06.2015
Что такое крах? Я не уверен, что требуется действительный номер телефона
- person Paulw11; 14.06.2015
Это очень странно... смс теперь работает, а телефон нет. Я пробовал со многими номерами, которые я знаю... может быть, это ошибка в SDK?
- person dev; 14.06.2015
Это вполне возможно. В конце концов, это это бета-версия.
- person bgilham; 15.06.2015
это работает, но подсказывает пользователю, и пользователь должен принять процесс вызова.
- person mkhoshpour; 15.12.2018
Кажется, в бета-версии 1 есть ошибка, которая не позволяет использовать openSystemURL для телефонных номеров. Я видел несколько примеров проектов, а также бил себя головой о стену, пытаясь начать работу. Никакая реализация, которую я видел, не работает. При этом смс работает нормально.
person
SprayKid982
schedule
18.06.2015