本文共 13718 字,大约阅读时间需要 45 分钟。
参考资料地址
百度云盘下载地址
This is a singleton class to gather all available information about a device. It gives you over 75 methods to determine everything about a device, including:
这是一个单例模式的类,收集了一个设备所有的信息,他提供了75个方法来获取设备的信息
本人已经过测试,除了一个方法 AudioSessionGetProperty 要被弃用了以外,使用非常方便,可以检测越狱或者不越狱.
1.将文件夹 System Services 拖拽至工程项目中
2.引入以下框架
3.项目工程中引入头文件 SystemServices.h
4.简单例子代码(本人在越狱的iOS7 touch 7.0.4 设备上测试过)
NSLog(@"===========================================================");
SystemServices *sysInfo = [SystemServices sharedServices]; NSLog(@"%@", sysInfo.allSystemInformation); NSLog(@"===========================================================");5.NSLog信息如下
2014-02-27 10:16:59.376 testMyPhone[8877:60b] ===========================================================
2014-02-27 10:17:08.767 testMyPhone[8877:60b] { AccessoriesAttached = No; "ActiveMemory (Formatted)" = "21.134186"; "ActiveMemory (Not Formatted)" = "108.207031"; ApplicationVersion = "1.0"; BatteryLevel = "100.000000"; CFUUID = "AC0E443C-C1A3-4B64-B8C9-224726D69A9D"; CarrierAllowsVOIP = No; CarrierCountry = CN; CarrierISOCountryCode = Unknown; CarrierMobileCountryCode = Unknown; CarrierMobileNetworkCode = Unknown; CarrierName = Unknown; CellBroadcastAddress = Unknown; CellIPAddress = Unknown; CellMACAddress = Unknown; CellNetmaskAddress = Unknown; Charging = Yes; ClipboardContent = "\U6210\U957f"; ConnectedToCellNetwork = No; ConnectedToWiFi = Yes; Country = "zh_CN"; Currency = "\Uffe5"; CurrentIPAddress = "192.168.60.104"; CurrentMACAddress = "02:00:00:00:00:00"; DebuggerAttached = No; DeviceModel = "iPod touch"; DeviceName = Phoenix; DeviceOrientation = 1; DeviceSignature = 7568320101100111ZHAS238328512SS; DiskSpace = "28.01 GB"; "External IP Address" = "124.200.223.109"; "FreeDiskSpace (Formatted)" = "28%"; "FreeDiskSpace (Not Formatted)" = "7.98 GB"; "FreeMemory (Formatted)" = "12.732697"; "FreeMemory (Not Formatted)" = "65.191406"; FullyCharged = Yes; HeadphonesAttached = Yes; "InactiveMemory (Formatted)" = "7.167816"; "InactiveMemory (Not Formatted)" = "36.699219"; Jailbroken = 3429542; Language = "zh-Hans"; LongDiskSpace = 30076624896; LongFreeDiskSpace = 8571482112; MultitaskingEnabled = Yes; NumberActiveProcessors = 2; NumberAttachedAccessories = 0; NumberProcessors = 2; ParentPID = 8875; PluggedIn = Yes; ProcessID = 8877; ProcessName = testMyPhone; ProcessStatus = 2; ProcessesInformation = ( { Flags = 512; Name = "kernel_task"; PID = 0; ParentID = "-1"; Priority = 21; StartDate = "2014-02-20 23:45:27 +0000"; Status = 2; }, { Flags = "-2147467264"; Name = launchd; PID = 1; ParentID = "-1"; Priority = 24; StartDate = "2014-02-20 23:45:27 +0000"; Status = 2; }, { Flags = 16384; Name = UserEventAgent; PID = 19; ParentID = 1; Priority = 17; StartDate = "2014-02-20 23:45:36 +0000"; Status = 2; }, { Flags = 16384; Name = BTServer; PID = 21; ParentID = 1; Priority = 17; StartDate = "2014-02-20 23:45:36 +0000"; Status = 2; }, { Flags = 16384; Name = SpringBoard; PID = 26; ParentID = 1; Priority = 17; StartDate = "2014-02-20 23:45:36 +0000"; Status = 2; }, { Flags = 16384; Name = aggregated; PID = 27; ParentID = 1; Priority = 17; StartDate = "2014-02-20 23:45:36 +0000"; Status = 2; }, { Flags = 16384; Name = backboardd; PID = 32; ParentID = 1; Priority = 17; StartDate = "2014-02-20 23:45:36 +0000"; Status = 2; }, { Flags = 16392; Name = configd; PID = 34; ParentID = 1; Priority = 24; StartDate = "2014-02-20 23:45:36 +0000"; Status = 2; }, { Flags = 16384; Name = "fairplayd.O2"; PID = 37; ParentID = 1; Priority = 17; StartDate = "2014-02-20 23:45:36 +0000"; Status = 2; }, { Flags = 16384; Name = fseventsd; PID = 38; ParentID = 1; Priority = 50; StartDate = "2014-02-20 23:45:36 +0000"; Status = 2; }, { Flags = 16384; Name = iaptransportd; PID = 39; ParentID = 1; Priority = 17; StartDate = "2014-02-20 23:45:36 +0000"; Status = 2; }, { Flags = 16384; Name = identityservices; PID = 40; ParentID = 1; Priority = 17; StartDate = "2014-02-20 23:45:36 +0000"; Status = 2; }, { Flags = 16384; Name = imagent; PID = 41; ParentID = 1; Priority = 17; StartDate = "2014-02-20 23:45:36 +0000"; Status = 2; }, { Flags = 16384; Name = locationd; PID = 42; ParentID = 1; Priority = 17; StartDate = "2014-02-20 23:45:36 +0000"; Status = 2; }, { Flags = 16384; Name = mDNSResponder; PID = 44; ParentID = 1; Priority = 17; StartDate = "2014-02-20 23:45:36 +0000"; Status = 2; }, { Flags = 16384; Name = mediaserverd; PID = 47; ParentID = 1; Priority = 24; StartDate = "2014-02-20 23:45:36 +0000"; Status = 2; }, { Flags = 16384; Name = lockdownd; PID = 54; ParentID = 1; Priority = 24; StartDate = "2014-02-20 23:45:36 +0000"; Status = 2; }, { Flags = 16384; Name = powerd; PID = 62; ParentID = 1; Priority = 17; StartDate = "2014-02-20 23:45:36 +0000"; Status = 2; }, { Flags = 16384; Name = sharingd; PID = 65; ParentID = 1; Priority = 17; StartDate = "2014-02-20 23:45:36 +0000"; Status = 2; }, { Flags = 16384; Name = syslogd; PID = 67; ParentID = 1; Priority = 24; StartDate = "2014-02-20 23:45:36 +0000"; Status = 2; }, { Flags = 16384; Name = wifid; PID = 72; ParentID = 1; Priority = 24; StartDate = "2014-02-20 23:45:36 +0000"; Status = 2; }, { Flags = 16640; Name = baiduimd; PID = 75; ParentID = 1; Priority = 24; StartDate = "2014-02-20 23:45:36 +0000"; Status = 2; }, { Flags = 16384; Name = notifyd; PID = 131; ParentID = 1; Priority = 17; StartDate = "2014-02-20 23:45:37 +0000"; Status = 2; }, { Flags = 16384; Name = distnoted; PID = 140; ParentID = 1; Priority = 17; StartDate = "2014-02-20 23:45:38 +0000"; Status = 2; }, { Flags = 16384; Name = networkd; PID = 151; ParentID = 1; Priority = 17; StartDate = "2014-02-20 23:45:39 +0000"; Status = 2; }, { Flags = 16384; Name = apsd; PID = 163; ParentID = 1; Priority = 24; StartDate = "2014-02-20 23:45:42 +0000"; Status = 2; }, { Flags = 16384; Name = tccd; PID = 188; ParentID = 1; Priority = 17; StartDate = "2014-02-20 23:45:44 +0000"; Status = 2; }, { Flags = 16384; Name = touchsetupd; PID = 211; ParentID = 1; Priority = 17; StartDate = "2014-02-20 23:46:00 +0000"; Status = 2; }, { Flags = 16384; Name = filecoordination; PID = 240; ParentID = 1; Priority = 17; StartDate = "2014-02-20 23:46:24 +0000"; Status = 2; }, { Flags = 16384; Name = calaccessd; PID = 257; ParentID = 1; Priority = 17; StartDate = "2014-02-20 23:46:34 +0000"; Status = 2; }, { Flags = 16384; Name = dataaccessd; PID = 423; ParentID = 1; Priority = 17; StartDate = "2014-02-21 00:07:06 +0000"; Status = 2; }, { Flags = 16384; Name = kbd; PID = 542; ParentID = 1; Priority = 17; StartDate = "2014-02-21 02:52:05 +0000"; Status = 2; }, { Flags = 16384; Name = mediaremoted; PID = 594; ParentID = 1; Priority = 17; StartDate = "2014-02-21 03:25:37 +0000"; Status = 2; }, { Flags = 16384; Name = EscrowSecurityAl; PID = 1199; ParentID = 1; Priority = 17; StartDate = "2014-02-21 15:47:13 +0000"; Status = 2; }, { Flags = 16384; Name = MobileMail; PID = 2161; ParentID = 1; Priority = 17; StartDate = "2014-02-22 11:19:28 +0000"; Status = 2; }, { Flags = 16384; Name = itunesstored; PID = 3814; ParentID = 1; Priority = 17; StartDate = "2014-02-23 23:36:45 +0000"; Status = 2; }, { Flags = 16384; Name = CVMServer; PID = 4639; ParentID = 1; Priority = 40; StartDate = "2014-02-24 09:11:07 +0000"; Status = 2; }, { Flags = 16384; Name = gamed; PID = 6872; ParentID = 1; Priority = 17; StartDate = "2014-02-25 13:51:48 +0000"; Status = 2; }, { Flags = 16384; Name = DuetLST; PID = 7039; ParentID = 1; Priority = 17; StartDate = "2014-02-25 14:21:38 +0000"; Status = 2; }, { Flags = 16384; Name = securityd; PID = 7041; ParentID = 1; Priority = 17; StartDate = "2014-02-25 14:21:39 +0000"; Status = 2; }, { Flags = 16384; Name = "networkd_privile"; PID = 7051; ParentID = 1; Priority = 17; StartDate = "2014-02-25 14:21:44 +0000"; Status = 2; }, { Flags = 16384; Name = geod; PID = 8440; ParentID = 1; Priority = 17; StartDate = "2014-02-26 23:09:21 +0000"; Status = 2; }, { Flags = 16384; Name = lsd; PID = 8450; ParentID = 1; Priority = 17; StartDate = "2014-02-26 23:09:33 +0000"; Status = 2; }, { Flags = 16384; Name = installd; PID = 8452; ParentID = 1; Priority = 17; StartDate = "2014-02-26 23:09:33 +0000"; Status = 2; }, { Flags = 16384; Name = sandboxd; PID = 8454; ParentID = 1; Priority = 17; StartDate = "2014-02-26 23:10:38 +0000"; Status = 2; }, { Flags = 16384; Name = itunescloudd; PID = 8457; ParentID = 1; Priority = 17; StartDate = "2014-02-26 23:10:51 +0000"; Status = 2; }, { Flags = 16384; Name = CommCenterClassi; PID = 8459; ParentID = 1; Priority = 17; StartDate = "2014-02-26 23:10:51 +0000"; Status = 2; }, { Flags = 16384; Name = medialibraryd; PID = 8467; ParentID = 1; Priority = 17; StartDate = "2014-02-26 23:10:55 +0000"; Status = 2; }, { Flags = 16384; Name = accountsd; PID = 8477; ParentID = 1; Priority = 17; StartDate = "2014-02-26 23:11:20 +0000"; Status = 2; }, { Flags = 16384; Name = aosnotifyd; PID = 8489; ParentID = 1; Priority = 17; StartDate = "2014-02-26 23:12:39 +0000"; Status = 2; }, { Flags = 16384; Name = MobileGestaltHel; PID = 8496; ParentID = 1; Priority = 17; StartDate = "2014-02-26 23:12:41 +0000"; Status = 2; }, { Flags = 16384; Name = mobileassetd; PID = 8506; ParentID = 1; Priority = 17; StartDate = "2014-02-26 23:12:50 +0000"; Status = 2; }, { Flags = 16384; Name = "com.apple.Stream"; PID = 8514; ParentID = 1; Priority = 17; StartDate = "2014-02-26 23:12:59 +0000"; Status = 2; }, { Flags = 16384; Name = AppleIDAuthAgent; PID = 8518; ParentID = 1; Priority = 24; StartDate = "2014-02-26 23:13:07 +0000"; Status = 2; }, { Flags = 16384; Name = librariand; PID = 8522; ParentID = 1; Priority = 17; StartDate = "2014-02-26 23:13:08 +0000"; Status = 2; }, { Flags = 16384; Name = wirelessproxd; PID = 8540; ParentID = 1; Priority = 17; StartDate = "2014-02-26 23:16:11 +0000"; Status = 2; }, { Flags = 16384; Name = routined; PID = 8546; ParentID = 1; Priority = 17; StartDate = "2014-02-26 23:16:57 +0000"; Status = 2; }, { Flags = 16384; Name = storebookkeeperd; PID = 8550; ParentID = 1; Priority = 24; StartDate = "2014-02-26 23:22:10 +0000"; Status = 2; }, { Flags = 16384; Name = timed; PID = 8554; ParentID = 1; Priority = 17; StartDate = "2014-02-26 23:24:48 +0000"; Status = 2; }, { Flags = 16384; Name = adid; PID = 8563; ParentID = 1; Priority = 17; StartDate = "2014-02-26 23:38:35 +0000"; Status = 2; }, { Flags = 16640; Name = xpcd; PID = 8580; ParentID = 1; Priority = 17; StartDate = "2014-02-26 23:52:10 +0000"; Status = 2; }, { Flags = 16640; Name = IMDPersistenceAg; PID = 8582; ParentID = 1; Priority = 17; StartDate = "2014-02-26 23:52:11 +0000"; Status = 2; }, { Flags = 16384; Name = ptpd; PID = 8623; ParentID = 1; Priority = 17; StartDate = "2014-02-27 00:39:14 +0000"; Status = 2; }, { Flags = 16384; Name = afcd; PID = 8625; ParentID = 1; Priority = 17; StartDate = "2014-02-27 00:39:14 +0000"; Status = 2; }, { Flags = 16384; Name = "mobile_installat"; PID = 8631; ParentID = 1; Priority = 24; StartDate = "2014-02-27 00:39:15 +0000"; Status = 2; }, { Flags = 16384; Name = "notification_pro"; PID = 8633; ParentID = 1; Priority = 40; StartDate = "2014-02-27 00:39:15 +0000"; Status = 2; }, { Flags = 16384; Name = "syslog_relay"; PID = 8637; ParentID = 1; Priority = 24; StartDate = "2014-02-27 00:39:15 +0000"; Status = 2; }, { Flags = 16384; Name = XcodeDeviceMonit; PID = 8639; ParentID = 1; Priority = 24; StartDate = "2014-02-27 00:39:15 +0000"; Status = 2; }, { Flags = 16384; Name = ubd; PID = 8643; ParentID = 1; Priority = 24; StartDate = "2014-02-27 00:39:16 +0000"; Status = 2; }, { Flags = 16384; Name = voiced; PID = 8664; ParentID = 1; Priority = 17; StartDate = "2014-02-27 00:53:37 +0000"; Status = 2; }, { Flags = 16384; Name = SystemServicesDe; PID = 8862; ParentID = 1; Priority = 17; StartDate = "2014-02-27 02:14:43 +0000"; Status = 2; }, { Flags = 16384; Name = syncdefaultsd; PID = 8871; ParentID = 1; Priority = 32; StartDate = "2014-02-27 02:16:43 +0000"; Status = 2; }, { Flags = 16384; Name = debugserver; PID = 8875; ParentID = 1; Priority = 24; StartDate = "2014-02-27 02:16:44 +0000"; Status = 2; }, { Flags = 18432; Name = testMyPhone; PID = 8877; ParentID = 8875; Priority = 24; StartDate = "2014-02-27 02:16:44 +0000"; Status = 2; }, { Flags = 16384; Name = assistantd; PID = 8878; ParentID = 1; Priority = 17; StartDate = "2014-02-27 02:16:54 +0000"; Status = 2; }, { Flags = 16384; Name = "assistant_servic"; PID = 8882; ParentID = 1; Priority = 17; StartDate = "2014-02-27 02:16:56 +0000"; Status = 2; } ); ProcessorBusSpeed = 995; ProcessorSpeed = 1026; ProximitySensorEnabled = No; "PurgableMemory (Formatted)" = "2.330780"; "PurgableMemory (Not Formatted)" = "11.933594"; ScreenBrightness = "74.338623"; ScreenHeight = 568; ScreenWidth = 320; SystemDeviceType = "iPod5,1"; "SystemDeviceType Formatted" = Unknown; SystemName = "iPhone OS"; SystemVersion = "7.0.4"; TimeZone = "Asia/Shanghai"; TotalMemory = "512.000000"; UniqueID = 6HH135102210002S; "Uptime (dd hh mm)" = "3 18 35"; "UsedDiskSpace (Formatted)" = "71%"; "UsedDiskSpace (Not Formatted)" = "20.03 GB"; "UsedMemory (Formatted)" = "44.140625"; "UsedMemory (Not Formatted)" = "226.660156"; WiFiBroadcastAddress = "192.168.60.255"; WiFiIPAddress = "192.168.60.104"; WiFiMACAddress = "02:00:00:00:00:00"; WiFiNetmaskAddress = "255.255.255.0"; "WiredMemory (Formatted)" = "15.967560"; "WiredMemory (Not Formatted)" = "81.753906"; } 2014-02-27 10:17:08.809 testMyPhone[8877:60b] ===========================================================
转载地址:http://jszma.baihongyu.com/