macOS ప్రాక్సీ కాన్ఫిగరేషన్ మార్పులకు సబ్స్క్రైబ్ చేయండి
సంబంధిత SystemConfiguration డైనమిక్-స్టోర్ కీలను పర్యవేక్షించండి మరియు macOS మార్పులను నివేదించినప్పుడు అనుకూల ట్రాన్స్పోర్ట్ ప్రాక్సీ విధానాన్ని రిఫ్రెష్ చేయండి.
ప్రారంభంలో మాత్రమే ప్రాక్సీ స్నాప్షాట్ను ఉపయోగించే ట్రాన్స్పోర్ట్ నెట్వర్క్ లేదా స్థానం మారిన తర్వాత పాతదిగా మిగిలిపోవచ్చు. macOS SystemConfiguration సబ్స్క్రిప్షన్ కోసం ఈ జీవిత చక్రాన్ని స్పష్టంగా ఉంచండి:
- కాల్బ్యాక్తో SCDynamicStore సెషన్ను సృష్టించండి.
SCDynamicStoreSetNotificationKeysఉపయోగించి ఖచ్చితమైన కీలు లేదా నమూనాలను నమోదు చేయండి. ఇవి వేర్వేరు శ్రేణులు. గ్లోబల్ ప్రాక్సీ కీState:/Network/Global/Proxies; సేవ-నిర్దిష్ట ఇన్పుట్లను ట్రాన్స్పోర్ట్ ఉపయోగించే చోట మాత్రమే జోడించండి.SCDynamicStoreSetDispatchQueueలేదా తగిన run-loop మూలం ద్వారా కాల్బ్యాక్ డెలివరీని ఏర్పాటు చేయండి. పేర్లను మాత్రమే నమోదు చేయడం కాల్బ్యాక్ను నడపదు.- నోటిఫికేషన్ వచ్చినప్పుడు ప్రభావవంత కాన్ఫిగరేషన్ను తిరిగి చదివి తదుపరి పనిని నవీకరించండి. మారిన కీల జాబితా తనంతట తానే పూర్తి కొత్త విధానం కాదు.
- మూసివేసేటప్పుడు స్వంత వనరులను విడుదల చేయడానికి ముందు శూన్య క్యూతో డెలివరీని నిలిపివేయండి. అప్పటి వరకు స్టోర్ మరియు కాల్బ్యాక్ సందర్భాన్ని సజీవంగా ఉంచండి.
Apple హెడర్ ఖాళీ మారిన-కీ జాబితాను డైనమిక్-స్టోర్ సర్వర్ పునఃప్రారంభం అని నిర్వచిస్తుంది. ఆ సందర్భంలో కూడా సంబంధిత స్థితిని రిఫ్రెష్ చేసి మునుపటి కంటెంట్ ఆధారంగా చేసిన ఊహలను విడిచిపెట్టండి.
ఇది పబ్లిక్ macOS API విధానం. Apple హెడర్లు సంబంధిత ఫంక్షన్లను iOS కోసం ప్రైవేట్ SPIగా గుర్తిస్తాయి, కాబట్టి అదే సబ్స్క్రిప్షన్ పబ్లిక్ iOS అప్లికేషన్ ఇంటర్ఫేస్ కాదు.