iPhone应用中如何获取硬件版本以及系统信息是及系本文要介绍的内容,主要是统信基于代码来实现硬件版本和系统信息的获取,来看详细内容。应用硬件获取iphone的中何系统信息使用[UIDevice currentDevice],信息如下:
- [[UIDevice currentDevice] systemName]:系统名称,如iPhone OS
- [[UIDevice currentDevice] systemVersion]:系统版本,版本如4.2.1
- [[UIDevice currentDevice] model]:The及系 model of the device,如iPhone或者iPod touch
- [[UIDevice currentDevice] uniqueIdentifier]:设备的统信惟一标识号,deviceID
- [[UIDevice currentDevice] name]:设备的应用硬件名称,如 张三的中何iPhone
- [[UIDevice currentDevice] localizedModel]:The model of the device as a localized string,类似model
- 详见http://developer.apple.com/library/ios/#documentation/uikit/reference/UIDevice_Class/Reference/UIDevice.html
但是版本以上的信息貌似无法得到设备的硬件版本以及系统信息,例如一个iphone3GS,及系系统升级到了iphone 4。统信此时使用systemVersion得到的应该是4.x.x,那我们如何知道该设备为iphone3GS呢。网上流传一个方法,经测试应该是有用的。
自定义一个类:
- #import <Foundation/Foundation.h>
- @interface UIDeviceHardware : NSObject {
- }
- - (NSString *) platform;
- - (NSString *) platformString;
- @end
- #import "UIDeviceHardware.h"
- #include <sys/types.h>
- #include <sys/sysctl.h>
- @implementation UIDeviceHardware
- - (NSString *) platform{
- size_t size;
- sysctlbyname("hw.machine", NULL, &size, NULL, 0);
- char *machine = malloc(size);
- sysctlbyname("hw.machine", machine, &size, NULL, 0);
- NSString *platform = [NSString stringWithCString:machine encoding:NSUTF8StringEncoding];
- free(machine);
- return platform;
- }
- - (NSString *) platformString{
- NSString *platform = [self platform];
- if ([platform isEqualToString:@"iPhone1,1"]) return @"iPhone 1G";
- if ([platform isEqualToString:@"iPhone1,2"]) return @"iPhone 3G";
- if ([platform isEqualToString:@"iPhone2,1"]) return @"iPhone 3GS";
- if ([platform isEqualToString:@"iPhone3,1"]) return @"iPhone 4";
- if ([platform isEqualToString:@"iPod1,1"]) return @"iPod Touch 1G";
- if ([platform isEqualToString:@"iPod2,1"]) return @"iPod Touch 2G";
- if ([platform isEqualToString:@"iPod3,1"]) return @"iPod Touch 3G";
- if ([platform isEqualToString:@"iPod4,1"]) return @"iPod Touch 4G";
- if ([platform isEqualToString:@"iPad1,1"]) return @"iPad";
- if ([platform isEqualToString:@"i386"] || [platform isEqualToString:@"x86_64"])
- return @"iPhone Simulator";
- return platform;
- }
- @end
使用[[[UIDeviceHardware alloc] init] platform]应该就可以得到设备的硬件版本。源码地址:http://download.csdn.net/source/3415689
小结:iPhone应用中如何获取硬件版本以及系统信息的内容介绍完了,希望通过本文的学习鞥读你有所帮助!
责任编辑:zhaolei 来源: 互联网 iPhone硬件版本系统信息(责任编辑:探索)
商业银行多重模式确保资金“直达实体” 严防资金空转和企业过度融资
中证金力挺民企债券融资专项计划 完善民营企业债券融资支持机制
今年8月份PMI数据为51.7% 制造业总体保持稳中向好的发展态势
新疆兵团发改委安排部署涉农价格与收费专项检查工作 促进农业持续发展
“海基一号”平台主体工程海上安装完成 处于南海内波流主通道上