Транспорт што користи снимка на прокси само при стартување може да остане застарен по промена на мрежата или локацијата. За претплата на macOS SystemConfiguration, одржувајте го овој животен циклус експлицитен:

  1. Создадете сесија SCDynamicStore со повратна функција.
  2. Регистрирајте точни клучеви или шаблони со SCDynamicStoreSetNotificationKeys. Тоа се одделни низи. Глобалниот прокси клуч е State:/Network/Global/Proxies; додавајте внесувања специфични за услугата само таму каде што транспортот ги користи.
  3. Организирајте испорака на повратната функција преку SCDynamicStoreSetDispatchQueue или соодветниот run-loop извор. Само регистрирање имиња не ја извршува повратната функција.
  4. При известување, прочитајте ја повторно ефективната конфигурација и ажурирајте ја следната работа. Списокот на променети клучеви сам по себе не е целосната нова политика.
  5. При исклучување, оневозможете ја испораката со нулта редица пред да ги ослободите сопствените ресурси. Држете го складиштето и контекстот на повратната функција живи до тогаш.

Заглавјето на Apple дефинира празен список на променети клучеви како рестартирање на серверот на динамичното складиште. И во тој случај освежете ја релевантната состојба и отфрлете претпоставки засновани на претходната содржина.

Ова е јавен пристап преку macOS API. Заглавјата на Apple ги означуваат соодветните функции како приватен SPI за iOS, така што истата претплата не е јавно интерфејс на iOS апликации.

Поврзани статии