Mag-subscribe sa mga pagbabago ng configuration ng proxy sa macOS
Subaybayan ang mga kaugnay na key ng dynamic na imbakan ng SystemConfiguration at i-refresh ang patakaran ng proxy ng custom na transport kapag nag-uulat ang macOS ng mga pagbabago.
Ang transport na gumagamit ng snapshot ng proxy sa pagsisimula lamang ay maaaring manatiling luma pagkatapos ng pagbabago ng network o lokasyon. Para sa subscription sa macOS SystemConfiguration, panatilihing tahasan ang lifecycle na ito:
- Gumawa ng session ng SCDynamicStore na may callback.
- Irehistro ang eksaktong mga key o pattern gamit ang
SCDynamicStoreSetNotificationKeys. Magkahiwalay ang mga ito na array. Ang global na key ng proxy ayState:/Network/Global/Proxies; magdagdag ng input na partikular sa serbisyo lamang kung saan ginagamit ito ng transport. - Isaayos ang paghahatid ng callback sa pamamagitan ng
SCDynamicStoreSetDispatchQueueo ang angkop na run-loop source. Hindi pinapatakbo ng pagrerehistro ng mga pangalan lamang ang callback. - Sa notification, basahin muli ang epektibong configuration at i-update ang kasunod na gawain. Ang listahan ng binagong key ay hindi sa sarili nito ang kumpletong bagong patakaran.
- Sa shutdown, huwag paganahin ang paghahatid gamit ang null queue bago ilabas ang mga pag-aaring resource. Panatilihing buhay ang imbakan at konteksto ng callback hanggang doon.
Itinutukoy ng header ng Apple ang walang laman na listahan ng binagong key bilang restart ng server ng dynamic na imbakan. Sa ganoong kaso rin, i-refresh ang kaugnay na estado at itapon ang mga palagay na batay sa dating nilalaman.
Ito ay isang pampublikong paraan ng macOS API. Minamarkahan ng mga header ng Apple ang mga kaukulang function bilang pribadong SPI para sa iOS, kaya ang parehong subscription ay hindi pampublikong interface ng aplikasyon ng iOS.