Transport, ktorý používa snímku proxy iba pri spustení, môže zostať zastaraný po zmene siete alebo umiestnenia. Pri odbere macOS SystemConfiguration udržujte tento životný cyklus explicitný:

  1. Vytvorte reláciu SCDynamicStore s callback funkciou.
  2. Zaregistrujte presné kľúče alebo vzory pomocou SCDynamicStoreSetNotificationKeys. Sú to oddelené polia. Globálny kľúč proxy je State:/Network/Global/Proxies; vstupy špecifické pre službu pridávajte len tam, kde ich transport používa.
  3. Zabezpečte doručovanie callbacku cez SCDynamicStoreSetDispatchQueue alebo vhodný zdroj run-loop. Samotné zaregistrovanie názvov callback nespustí.
  4. Po oznámení znova načítajte efektívnu konfiguráciu a aktualizujte nasledujúcu prácu. Zoznam zmenených kľúčov sám o sebe nie je úplná nová politika.
  5. Pri vypnutí vypnite doručovanie prázdnym frontom pred uvoľnením vlastnených prostriedkov. Dovtedy udržujte úložisko a kontext callbacku nažive.

Hlavička Apple definuje prázdny zoznam zmenených kľúčov ako reštart servera dynamického úložiska. Aj v takom prípade obnovte príslušný stav a zahoďte predpoklady založené na predchádzajúcom obsahu.

Je to verejný prístup cez API macOS. Hlavičky Apple označujú príslušné funkcie ako súkromné SPI pre iOS, takže ten istý odber nie je verejné rozhranie aplikácií iOS.

Súvisiace články