Naročite se na spremembe konfiguracije proxyja v macOS
Spremljajte ustrezne ključe dinamičnega shrambe SystemConfiguration in osvežite politiko proxyja prilagojenega transporta, ko macOS poroča o spremembah.
Transport, ki uporablja posnetek proxyja samo ob zagonu, lahko ostane zastarel po spremembi omrežja ali lokacije. Pri naročnini macOS SystemConfiguration ohranjajte ta življenjski cikel izrecen:
- Ustvarite sejo SCDynamicStore s povratnim klicem.
- Registrirajte natančne ključe ali vzorce z
SCDynamicStoreSetNotificationKeys. To so ločena polja. Globalni ključ proxyja jeState:/Network/Global/Proxies; vnose, specifične za storitev, dodajte le tam, kjer jih transport uporablja. - Organizirajte dostavo povratnega klica prek
SCDynamicStoreSetDispatchQueueali ustreznega vira run-loop. Samo registriranje imen povratnega klica ne zažene. - Ob obvestilu znova preberite dejansko konfiguracijo in posodobite nadaljnje delo. Seznam spremenjenih ključev sam po sebi ni popolna nova politika.
- Ob izklopu onemogočite dostavo s prazno čakalno vrsto, preden sprostite lastne vire. Do takrat ohranjajte shrambo in kontekst povratnega klica živa.
Appleova glava določa prazen seznam spremenjenih ključev kot ponovni zagon strežnika dinamične shrambe. Tudi v tem primeru osvežite ustrezno stanje in zavrzite predpostavke, ki temeljijo na prejšnji vsebini.
To je javni pristop API macOS. Appleove glave označujejo ustrezne funkcije kot zasebni SPI za iOS, zato ista naročnina ni javni vmesnik aplikacij iOS.