由于需要获取设备名字,在网上找了一些方法,发现能够解决问题,但是需要做一个匹配,然后设备年年都会出新款,而且设备的种类又很多,所以在获取设备信息后我又做了一个操作,---》我在google上找到了一个网站,发现这个网站有维护一些这种的设备信息,而且查询的条件就是我们从ios系统中获取的machine的值,然后做了个简单的字符串截取。~ 结果设备名字就获取到了。。。,虽然方法不是很保险,但是能用。。。(备注:这个自己肯定要做一些异常处理。。)
#import "IOSModelGetter.h"
#import <sys/utsname.h>
@implementation IOSModelGetter
+ (void)getDeviceModel:(void(^)(NSString *))successBlock{
struct utsname systemInfo;
uname(&systemInfo);
NSString *deviceModel = [NSString stringWithCString:systemInfo.machine encoding:NSUTF8StringEncoding];
NSString *requestUrl = [NSString stringWithFormat:@"https://ipsw.me/iPhone3,1"];
NSData *data = [[NSData alloc] initWithContentsOfURL:[NSURL URLWithString:requestUrl]];
NSString *str = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
NSRange range1 = [str rangeOfString:@"<title>"];
NSRange range2 = [str rangeOfString:@"Information"];
NSString *desc = [str substringWithRange:NSMakeRange(range1.location+range1.length, range2.location)];
desc = [desc substringToIndex:[desc rangeOfString:@"Information"].location];
}
@end