Iratkozzon fel a macOS proxykonfiguráció változásaira
Figyelje a releváns SystemConfiguration dinamikus tár kulcsait, és frissítse egy egyedi átvitel proxyszabályzatát, amikor a macOS változásokat jelent.
Az az átvitel, amely csak indításkor készített proxy-pillanatképet használ, a hálózat vagy a helyszín változása után elavult maradhat. macOS SystemConfiguration-feliratkozás esetén tartsa ezt az életciklust kifejezettnek:
- Hozzon létre egy SCDynamicStore-munkamenetet visszahívással.
- Regisztráljon pontos kulcsokat vagy mintákat a
SCDynamicStoreSetNotificationKeyssegítségével. Ezek külön tömbök. A globális proxykulcs aState:/Network/Global/Proxies; szolgáltatásspecifikus bemeneteket csak ott adjon hozzá, ahol az átvitel felhasználja őket. - Gondoskodjon a visszahívás kézbesítéséről a
SCDynamicStoreSetDispatchQueuevagy a megfelelő run-loop-forrás segítségével. A nevek puszta regisztrálása nem futtatja a visszahívást. - Értesítéskor olvassa újra az érvényes konfigurációt, és frissítse a további munkát. A megváltozott kulcsok listája önmagában nem a teljes új szabályzat.
- Leállításkor tiltsa le a kézbesítést egy üres sorral, mielőtt felszabadítja a saját erőforrásokat. Tartsa életben a tárat és a visszahívási környezetet addig.
Az Apple fejléce az üres megváltozottkulcs-listát a dinamikus tár kiszolgálójának újraindításaként definiálja. Ebben az esetben is frissítse a releváns állapotot, és vesse el a korábbi tartalomra alapozott feltevéseket.
Ez egy nyilvános macOS API-megközelítés. Az Apple fejlécei a megfelelő függvényeket privát SPI-ként jelölik meg iOS-hez, ezért ugyanaz a feliratkozás nem nyilvános iOS-alkalmazásfelület.