Abonnér på ændringer i macOS-proxykonfiguration
Overvåg de relevante SystemConfiguration-dynamiske nøgler, og opdater en tilpasset transports proxypolitik, når macOS rapporterer ændringer.
En transport, der kun bruger et proxy-øjebliksbillede ved opstart, kan forblive forældet efter en ændring af netværk eller placering. For et macOS SystemConfiguration-abonnement skal denne livscyklus være eksplicit:
- Opret en SCDynamicStore-session med et callback.
- Registrér præcise nøgler eller mønstre med
SCDynamicStoreSetNotificationKeys. De er separate arrays. Den globale proxynøgle erState:/Network/Global/Proxies; tilføj tjenestespecifikke input kun der, hvor transporten bruger dem. - Sørg for callback-levering via
SCDynamicStoreSetDispatchQueueeller den relevante run-loop-kilde. Det er ikke nok at registrere navne for at køre callbacket. - Læs den effektive konfiguration igen ved notifikation, og opdater det efterfølgende arbejde. Listen over ændrede nøgler er ikke i sig selv den fulde nye politik.
- Deaktivér levering med en nul-kø ved nedlukning, før ejede ressourcer frigives. Hold lageret og callback-konteksten i live indtil da.
Apples header definerer en tom liste over ændrede nøgler som en genstart af den dynamiske lager-server. Opdater også relevant tilstand, og kassér antagelser baseret på det tidligere indhold i det tilfælde.
Dette er en offentlig macOS-API-tilgang. Apples headere markerer de tilsvarende funktioner som privat SPI til iOS, så det samme abonnement er ikke en offentlig iOS-applikationsgrænseflade.