Претплатете се на промените во конфигурацијата на прокси во macOS
Следете ги релевантните клучеви на динамичното складиште SystemConfiguration и освежете ја прокси политиката на прилагоден транспорт кога macOS пријавува промени.
Транспорт што користи снимка на прокси само при стартување може да остане застарен по промена на мрежата или локацијата. За претплата на macOS SystemConfiguration, одржувајте го овој животен циклус експлицитен:
- Создадете сесија SCDynamicStore со повратна функција.
- Регистрирајте точни клучеви или шаблони со
SCDynamicStoreSetNotificationKeys. Тоа се одделни низи. Глобалниот прокси клуч еState:/Network/Global/Proxies; додавајте внесувања специфични за услугата само таму каде што транспортот ги користи. - Организирајте испорака на повратната функција преку
SCDynamicStoreSetDispatchQueueили соодветниот run-loop извор. Само регистрирање имиња не ја извршува повратната функција. - При известување, прочитајте ја повторно ефективната конфигурација и ажурирајте ја следната работа. Списокот на променети клучеви сам по себе не е целосната нова политика.
- При исклучување, оневозможете ја испораката со нулта редица пред да ги ослободите сопствените ресурси. Држете го складиштето и контекстот на повратната функција живи до тогаш.
Заглавјето на Apple дефинира празен список на променети клучеви како рестартирање на серверот на динамичното складиште. И во тој случај освежете ја релевантната состојба и отфрлете претпоставки засновани на претходната содржина.
Ова е јавен пристап преку macOS API. Заглавјата на Apple ги означуваат соодветните функции како приватен SPI за iOS, така што истата претплата не е јавно интерфејс на iOS апликации.