//获取手机网络状态
- (NSString *)getStates{
NSArray *children = [[[[UIApplication sharedApplication] valueForKeyPath:@"statusBar"]valueForKeyPath:@"foregroundView"]subviews];NSString *state = [[NSString alloc]init];
int netType = 0;
//获取到网络返回码
for (id child in children){
if ([child isKindOfClass:NSClassFromString(@"UIStatusBarDataNetworkItemView")]){
//获取到状态栏
netType = [[child valueForKeyPath:@"dataNetworkType"]intValue];
switch (netType){
case 0:
state = @"无网络";
//无网模式
break;
case 1:
state = @"2G";
break;
case 2:
state = @"3G";
break;
case 3:
state = @"4G";
break;
case 5:{
state = @"WIFI";
}
break;
default:{
state = @"未识别网络";
break;
}
}
}
}
return state;
}
//获取手机状态
- (void)iphoneStatus{
// NSString *deviceID = [[UIDevice currentDevice] uniqueIdentifier];//设备id
// NSString *deviceID = [[UIApplication sharedApplication] uuid];
NSString *systemVersion = [[UIDevice currentDevice] systemVersion];//系统版本
NSString *systemModel = [[UIDevice currentDevice] model];//是iphone 还是 ipad
NSDictionary *dic = [[NSBundle mainBundle] infoDictionary];//获取info-plist
NSString *appName = [dic objectForKey:@"CFBundleIdentifier"];//获取Bundle identifier
NSString *appVersion = [dic valueForKey:@"CFBundleVersion"];//获取Bundle Version
NSDictionary *userInfo = [[NSDictionary alloc] initWithObjectsAndKeys:
// deviceID, @"deviceID",
systemVersion, @"systemVersion",
dic,@"info-plist",
systemModel, @"systemModel",
appName, @"appName",
appVersion, @"appVersion",nil];
NSLog(@"%@", userInfo);
}