macOS proksi konfiguratsiyasi o'zgarishlariga obuna bo'ling
Tegishli SystemConfiguration dinamik ombor kalitlarini kuzatib boring va macOS o'zgarishlar haqida xabar berganda maxsus transportning proksi siyosatini yangilang.
Faqat ishga tushish paytida proksi suratidan foydalanadigan transport tarmoq yoki joylashuv o'zgargandan keyin eskirib qolishi mumkin. macOS SystemConfiguration obunasi uchun bu hayot tsiklini aniq saqlang:
- Callback bilan SCDynamicStore sessiyasini yarating.
SCDynamicStoreSetNotificationKeysyordamida aniq kalitlar yoki naqshlarni ro'yxatdan o'tkazing. Bular alohida massivlar. Global proksi kalitiState:/Network/Global/Proxies; xizmatga xos kirishlarni faqat transport ularni ishlatadigan joyga qo'shing.- Callback yetkazib berishni
SCDynamicStoreSetDispatchQueueyoki tegishli run-loop manbasi orqali tashkil qiling. Faqat nomlarni ro'yxatdan o'tkazish callbackni ishga tushirmaydi. - Bildirishnoma kelganda amaldagi konfiguratsiyani qayta o'qing va keyingi ishni yangilang. O'zgargan kalitlar ro'yxati o'zi to'liq yangi siyosat emas.
- O'chirishda egalik qilingan resurslarni bo'shatishdan oldin yetkazib berishni bo'sh navbat bilan o'chiring. Shu vaqtgacha ombor va callback kontekstini tirik saqlang.
Apple sarlavhasi bo'sh o'zgargan-kalitlar ro'yxatini dinamik ombor serverining qayta ishga tushishi deb belgilaydi. Bunday holatda ham tegishli holatni yangilang va oldingi mazmunga asoslangan taxminlardan voz keching.
Bu ochiq macOS API yondashuvi. Apple sarlavhalari tegishli funksiyalarni iOS uchun xususiy SPI deb belgilaydi, shuning uchun bir xil obuna ochiq iOS ilova interfeysi emas.