Transport, který používá snímek proxy pouze při spuštění, může po změně sítě nebo umístění zůstat zastaralý. U odběru macOS SystemConfiguration udržujte tento životní cyklus explicitní:

  1. Vytvořte relaci SCDynamicStore s callback funkcí.
  2. Zaregistrujte přesné klíče nebo vzory pomocí SCDynamicStoreSetNotificationKeys. Jsou to samostatná pole. Globální klíč proxy je State:/Network/Global/Proxies; vstupy specifické pro službu přidávejte jen tam, kde je transport spotřebovává.
  3. Zajistěte doručování callbacku přes SCDynamicStoreSetDispatchQueue nebo vhodný zdroj run-loop. Pouhé zaregistrování názvů callback nespustí.
  4. Po oznámení znovu načtěte efektivní konfiguraci a aktualizujte následnou práci. Seznam změněných klíčů sám o sobě není úplná nová zásada.
  5. Při vypnutí vypněte doručování prázdnou frontou před uvolněním vlastněných prostředků. Do té doby udržujte úložiště a kontext callbacku živé.

Hlavička Apple definuje prázdný seznam změněných klíčů jako restart serveru dynamického úložiště. I v takovém případě obnovte příslušný stav a zahoďte předpoklady založené na předchozím obsahu.

Jde o veřejný přístup přes API macOS. Hlavičky Apple označují odpovídající funkce jako soukromé SPI pro iOS, takže stejný odběr není veřejné rozhraní aplikací iOS.

Související články