Swift 4 iOS 11: успешное закрытие для UIApplication.shared.open для совершения телефонного звонка отличается для ios11

Я пытаюсь сделать телефонный звонок, используя

 UIApplication.shared.open(url as URL, options: [:], completionHandler: { success in

Однако для iOS 10.3+ я получаю успешное закрытие, когда вызов успешно выполнен или пользователь отменяет запрос

Однако для iOS 11 успешное закрытие происходит, когда вы успешно открываете URL-адрес.

Каков наилучший способ справиться с разницей и как мне добиться успеха, когда пользователь нажимает на вызов на iOS11.


person Somu    schedule 12.10.2017    source источник
comment
Что вы хотите? Хотите проверить completion closure ?   -  person Mannopson    schedule 12.10.2017
comment
Мне нужно получить закрытие завершения, когда пользователь на самом деле нажимает кнопку вызова или отмены. Не тогда, когда отображается подсказка.   -  person Somu    schedule 12.10.2017
comment
iOS 10 раньше давала это правильно, но iOS 11 дает успех, когда отображается подсказка, а не когда вы фактически совершаете вызов   -  person Somu    schedule 12.10.2017
comment
Это блок completion, и он вызывается, когда операция завершена.   -  person Mannopson    schedule 12.10.2017
comment
Это отличается для iOS 11 и iOS 10. Еще один вопрос здесь для вашей справки " title="подсказка при попытке набрать номер телефона с использованием схемы тел на ios 11"> stackoverflow.com/questions/45980857/   -  person Somu    schedule 12.10.2017
comment
Я не вижу никакой разницы между SDK для iOS 10 и SDK для iOS 11. Прежде всего, вам нужно проверить canOpenURL. Он возвращает значение Bool   -  person Mannopson    schedule 12.10.2017
comment
Давайте продолжим это обсуждение в чате.   -  person Somu    schedule 12.10.2017
comment
Я уже делаю это. Я предполагаю, что вы не понимаете мой вопрос, мой код попадает в завершениеHandler для openURL, когда я фактически нажимаю на вызов и делаю вызов в случае iOS 10 в iOS 11, он попадает в точку останова, когда показывает само приглашение. Это ошибка, о которой сообщили в Apple. Я нахожу способ преодолеть это и знаю, как получить завершение, когда пользователь действительно звонит на iOS 11.   -  person Somu    schedule 12.10.2017
comment
Можете ли вы показать нам весь код?   -  person Mannopson    schedule 12.10.2017