Я думаю, что это ошибка iOS, и мы не можем ее избежать.
Эта проблема также обсуждалась на форуме разработчиков Apple, и ответ сотрудников Apple был ниже
"У меня ничего нетздесь, помимо того, что я сказал 13 февраля. Тот факт, что ошибки из подсистемы Wi-Fi не сообщаются через обработчик завершения, является ожидаемым поведением. Если вам не нравится это поведение - и, чтобы быть ясным, ялично с вами согласен - лучший способ продвинуться - подать отчет об ошибке с просьбой изменить его. Пожалуйста, оставьте свой номер ошибки, просто для записи. "
Это обсуждалось здесь
Так что, к сожалению, у меня нет прекрасных идей.Все идеи, которые у меня есть, приведены ниже (они не решают эту проблему идеально).
- Ожидание исправления ошибки в следующем выпуске.
- Отдельный код "Применение конфигурации" и связькод как показано ниже.
@IBAction func setConfigurationButtonTapped(_ sender : Any) {
manager.apply(hotspotConfiguration) { (error) in
if(error != nil){
// Do error handling
}else{
// Wait a few seconds for the case of showing "Unable to join the..." dialog.
// Check reachability to the device because "error == nil" does not means success.
}
}
@IBAction func sendButtonTapped(_ sender : Any) {
self.startSession()
}