1. 获取版本号:
Version在plist文件中的key是“CFBundleShortVersionString”,和AppStore上的版本号保持一致,Build在plist中的key是“CFBundleVersion”,代表build的版本号,该值每次build之后都应该增加1。
[[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleShortVersionString"];
[[NSBundle mainBundle]objectForInfoDictionaryKey:@"CFBundleShortVersionString"];
[[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleVersion"];
2.获取手机网络状态和运营商信息
导入
CoreTelephony.framework
引入头文件
#import <CoreTelephony/CTTelephonyNetworkInfo.h>
#import <CoreTelephony/CTCarrier.h>
2.1获取手机网络状
<strong><span style="font-size:14px;">-(void)networktype{
NSArray *subviews = [[[[UIApplication sharedApplication] valueForKey:@"statusBar"] valueForKey:@"foregroundView"]subviews];
NSNumber *dataNetworkItemView = nil;
for (id subview in subviews) {
if([subview isKindOfClass:[NSClassFromString(@"UIStatusBarDataNetworkItemView") class]]) {
dataNetworkItemView = subview;
break;
}
}
switch ([[dataNetworkItemView valueForKey:@"dataNetworkType"]integerValue]) {
case 0:
NSLog(@"No wifi or cellular");
infoLabel.text=@"无服务";
break;
case 1:
NSLog(@"2G");
infoLabel.text=@"2G";
break;
case 2:
NSLog(@"3G");
infoLabel.text=@"3G";
break;
case 3:
NSLog(@"4G");
infoLabel.text=@"4G";
break;
case 4:
NSLog(@"LTE");
infoLabel.text=@"LTE";
break;
case 5:
NSLog(@"Wifi");
infoLabel.text=@"Wifi";
break;
default:
break;
}} </span></strong>
2.2获取运营商信息
<span style="color:#333333;">-(NSString*)getOperatorName{
CTTelephonyNetworkInfo *telephonyInfo = [[CTTelephonyNetworkInfo alloc] init];
CTCarrier *carrier = [telephonyInfo subscriberCellularProvider];
NSString *currentCountry=[carrier carrierName];
NSLog(@"[carrier isoCountryCode]==%@,[carrier allowsVOIP]=%d,[carrier mobileCountryCode=%@,[carrier mobileCountryCode]=%@",[carrier isoCountryCode],[carrier allowsVOIP],[carrier mobileCountryCode],[carrier mobileNetworkCode]);
return currentCountry;
} </span>
3 获取设备常用信息
3.1手机系统:iPhone OS
NSString* phoneVersion = [[UIDevice currentDevice] systemVersion];
3.2手机类型:iPhone 6
+ (NSString *)iphoneType {
struct utsname systemInfo;
uname(&systemInfo);
NSString *platform = [NSString stringWithCString:systemInfo.machine encoding:NSASCIIStringEncoding];
if ([platform isEqualToString:@"iPhone1,1"]) return @"iPhone 2G";
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:@"iPhone3,2"]) return @"iPhone 4";
if ([platform isEqualToString:@"iPhone3,3"]) return @"iPhone 4";
if ([platform isEqualToString:@"iPhone4,1"]) return @"iPhone 4S";
if ([platform isEqualToString:@"iPhone5,1"]) return @"iPhone 5";
if ([platform isEqualToString:@"iPhone5,2"]) return @"iPhone 5";
if ([platform isEqualToString:@"iPhone5,3"]) return @"iPhone 5c";
if ([platform isEqualToString:@"iPhone5,4"]) return @"iPhone 5c";
if ([platform isEqualToString:@"iPhone6,1"]) return @"iPhone 5s";
if ([platform isEqualToString:@"iPhone6,2"]) return @"iPhone 5s";
if ([platform isEqualToString:@"iPhone7,1"]) return @"iPhone 6 Plus";
if ([platform isEqualToString:@"iPhone7,2"]) return @"iPhone 6";
if ([platform isEqualToString:@"iPhone8,1"]) return @"iPhone 6s";
if ([platform isEqualToString:@"iPhone8,2"]) return @"iPhone 6s Plus";
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:@"iPod5,1"])return @"iPod Touch 5G";
if ([platform isEqualToString:@"iPad1,1"])return @"iPad 1G";
if ([platform isEqualToString:@"iPad2,1"])return @"iPad 2";
if ([platform isEqualToString:@"iPad2,2"])return @"iPad 2";
if ([platform isEqualToString:@"iPad2,3"])return @"iPad 2";
if ([platform isEqualToString:@"iPad2,4"])return @"iPad 2";
if ([platform isEqualToString:@"iPad2,5"])return @"iPad Mini 1G";
if ([platform isEqualToString:@"iPad2,6"])return @"iPad Mini 1G";
if ([platform isEqualToString:@"iPad2,7"])return @"iPad Mini 1G";
if ([platform isEqualToString:@"iPad3,1"])return @"iPad 3";
if ([platform isEqualToString:@"iPad3,2"])return @"iPad 3";
if ([platform isEqualToString:@"iPad3,3"])return @"iPad 3";
if ([platform isEqualToString:@"iPad3,4"])return @"iPad 4";
if ([platform isEqualToString:@"iPad3,5"])return @"iPad 4";
if ([platform isEqualToString:@"iPad3,6"])return @"iPad 4";
if ([platform isEqualToString:@"iPad4,1"])return @"iPad Air";
if ([platform isEqualToString:@"iPad4,2"])return @"iPad Air";
if ([platform isEqualToString:@"iPad4,3"])return @"iPad Air";
if ([platform isEqualToString:@"iPad4,4"])return @"iPad Mini 2G";
if ([platform isEqualToString:@"iPad4,5"])return @"iPad Mini 2G";
if ([platform isEqualToString:@"iPad4,6"])return @"iPad Mini 2G";
if ([platform isEqualToString:@"i386"])return @"iPhone Simulator";
if ([platform isEqualToString:@"x86_64"])return @"iPhone Simulator";
return platform;
}
3.3手机系统版本:9.1
NSString * iponeM = [[UIDevice currentDevice] systemName];
3.4手机电池电量
CGFloat batteryLevel=[[UIDevicecurrentDevice]batteryLevel];