Безопасно ли использовать уведомление com.apple.system.config.network_change для обнаружения изменений достижимости сети? - PullRequest
0 голосов
/ 03 октября 2018

Безопасно ли использовать уведомление com.apple.system.config.network_change для обнаружения изменений достижимости сети?Или это считается частным API?На данный момент мой код выглядит следующим образом:

CFNotificationCenterAddObserver(CFNotificationCenterGetDarwinNotifyCenter(),
                                nil,
                                callback,
                                "com.apple.system.config.network_change" as CFString,
                                nil,
                                .deliverImmediately);

А затем в ответном вызове я отвечаю на уведомление.

Проблема в том, что достижимость в iOS не всегда обнаруживает переключение Wi-Fi.Например, если мы переключаемся с одной точки доступа Wi-Fi на другую, которую система уже знает (потому что мы использовали ее в прошлом), то это происходит так быстро, что нет события «Отключено», и я не могу отследить фактический момент переключения,Решение выше работает, но я уверен, что мое приложение не будет отклонено для публикации в App Store.

Спасибо!

Ответы [ 2 ]

0 голосов
/ 04 октября 2018

На данный момент это общедоступный API.Для более подробной информации смотрите эту тему:

https://forums.developer.apple.com/message/334035#334035

0 голосов
/ 03 октября 2018

Я не могу точно ответить на ваш вопрос, но способ обработки Достижимости изменений использует эту"lib", что довольно точно при прослушиваниидля каждого изменения.Я думаю, вы могли бы попробовать, если он соответствует вашим потребностям в обнаружении этого конкретного момента переключения между двумя Wi-Fi.

Если вы не хотите импортировать его - это действительно маленький файл - вы можете просто увидеть, как он работает - в основном используя SCNetworkReachability.

...