iOS 13: использование нового NEHotspotConfiguration.init (ssidPrefix: String) не работает - PullRequest
1 голос
/ 20 сентября 2019

Я сейчас использую Xcode 11.0 и iOS 13.1 (бета).Я экспериментирую с недавно добавленной в iOS 13 функцией подключения к точкам доступа Wi-Fi, где известен только префикс: Документы Apple

Это идеально подходит для настройки Wi-Fi безголового аксессуара, так какВам не нужно было бы просить пользователя переключиться на настройки ОС, чтобы подключиться к Wi-Fi аксессуара.

Но, к сожалению, я не могу заставить его работать должным образом.

Мой код ( Swift 5 ):

if #available(iOS 13, *) {
        // The accessory's wifi name starts with "device-", followed by 3 digit number, e.g. "device-012"
        let configuration = NEHotspotConfiguration.init(ssidPrefix: "device-")
        configuration.joinOnce = true

        NEHotspotConfigurationManager.shared.apply(configuration) { (error) in
            if error != nil {
                if error?.localizedDescription == "already associated."
                {
                    print("Connected")
                }
                else {
                    print("No Connected")
                }
            }
            else {
                print("Connected")
            }
        }
    }

Используя полное имя (например, «device-012»), он работает:

let configuration = NEHotspotConfiguration.init(ssidPrefix: "device-012")

Я что-то упустил?Может, префиксной строке нужен какой-то шаблон подстановки или около того?

Спасибо, Генри

1 Ответ

0 голосов
/ 25 сентября 2019

Не установка configuration.joinOnce = true или установка false заставляет его работать.

Отчет об ошибке уже подан в Apple.

...