MobileGestalt
LibMobileGestalt.dylib आईओएस के गुणों का के लिए एक केंद्रीय भंडार प्रदान करता है। यह ओएस एक्स के गेस्टाल्ट के अनुरूप हो सकता है, जो इसका हिस्सा है CoreServices
। ओएस एक्स के गेस्टाल्ट को उदाहरण के लिए गेस्टाल्ट मैनेजर के रूप में प्रलेखित किया गया है और 10.8 के रूप में चित्रित किया गया है। MobileGestalt पूरी तरह से Apple द्वारा अप्रकाशित है क्योंकि यह एक निजी पुस्तकालय है।
MobileGestalt सिस्टम संपत्तियों के परीक्षण की अनुमति देता है जो विभिन्न सिमुलेटरों पर संगत हो सकते हैं या नहीं।
आईओएस में कुछ सिस्टम प्रोसेस और ऐप काफी हद तक MobileGestalt पर निर्भर करते हैं, जो /usr/lib/libMobileGestalt.dylib पर स्थित है। यह एक मूल पुस्तकालय से अधिक है, लेकिन इसके उजागर एपीआई एप्पल फ्रेमवर्क सम्मेलनों का अनुसरण करते हैं और MG
उदाहरण के लिए एपीआई उपसर्ग का उपयोग करते हैंMGIsDeviceOneOfType
।
यदि आप iOS फाइल सिस्टम पर MobileGestalt की तलाश करते हैं, तो आपको यह नहीं मिलेगा - सभी निजी फ्रेमवर्क और लाइब्रेरी की तरह, इसे /System/Library/Caches/..etc में प्रीलिंक किया गया है। अगर आपको हैकिंग और पेन-टेस्टिंग पसंद है तो आप इसे निकालने के लिए टूल्स का इस्तेमाल कर सकते हैं।
MobileGestalt सिस्टम के विभिन्न पहलुओं पर बहुत सारी जानकारी - लगभग 200 या इतने ही प्रश्न प्रदान करता है। यहाँ कुछ है।
libMobileGestalt.dylib
//Answers to MG queries
MGCopyAnswer(@"5MSZn7w3nnJp22VbpqaxLQ");
MGCopyAnswer(@"7mV26K/1a+wTtqiunvHMUQ");
MGCopyAnswer(@"BasebandAPTimeSync");
MGCopyAnswer(@"BasebandPostponementStatus");
MGCopyAnswer(@"BasebandPostponementStatusBlob");
MGCopyAnswer(@"BasebandSecurityInfoBlob");
MGCopyAnswer(@"BasebandStatus");
MGCopyAnswer(@"BuildVersion");
MGCopyAnswer(@"CoreRoutineCapability");
MGCopyAnswer(@"DeviceClass");
MGCopyAnswer(@"DeviceClassNumber");
MGCopyAnswer(@"DeviceName");
MGCopyAnswer(@"DeviceSupports1080p");
MGCopyAnswer(@"DeviceSupports720p");
MGCopyAnswer(@"DiskUsage");
MGCopyAnswer(@"GSDeviceName");
MGCopyAnswer(@"HWModelStr");
MGCopyAnswer(@"HasBaseband");
MGCopyAnswer(@"InternalBuild");
MGCopyAnswer(@"InverseDeviceID");
MGCopyAnswer(@"IsSimulator");
MGCopyAnswer(@"MLBSerialNumber");
MGCopyAnswer(@"MaxH264PlaybackLevel");
MGCopyAnswer(@"MinimumSupportediTunesVersion");
MGCopyAnswer(@"PasswordConfigured");
MGCopyAnswer(@"PasswordProtected");
MGCopyAnswer(@"ProductType");
MGCopyAnswer(@"ProductVersion");
MGCopyAnswer(@"RegionCode");
MGCopyAnswer(@"RegionalBehaviorNTSC");
MGCopyAnswer(@"RegionalBehaviorNoPasscodeLocationTiles");
MGCopyAnswer(@"ReleaseType");
MGCopyAnswer(@"SIMStatus");
सैकड़ों और उदाहरण हैं AirplaneMode
,MobileEquipmentIdentifier
आदि
MobileGestalt OSType चयनकर्ता कोड की एक तालिका रखता है। उदाहरण के लिए c: 890 इस संदेश में: libMobileGestalt MobileGestalt.c: 890: MGIsDeviceOneOfType इस प्लेटफ़ॉर्म पर समर्थित नहीं है। इस मामले MGIsDeviceOneOfType
में MobileGestalt पुस्तकालय की एक विधि है ।
सिम्युलेटर संस्करण की जांच करने के बजाय सीधे सिम्युलेटर की क्षमताओं को क्वेरी करने के लिए एक अलग चयनकर्ता है। सबसे अधिक संभावना है कि संदेश सिम्युलेटर संस्करणों और एक्सकोड संस्करणों और / या सिम्युलेटर पर असमर्थित एपीआई के बीच असंगतता का संकेत देते हैं।