ios开发中获取常用的应用与设备信息
2016-07-28 12:33
513 查看
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获取手机网络状
2.2获取运营商信息
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
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];
相关文章推荐
- iOS 中使用.9图
- 网上收集的以及自己总结的iOS开发技巧
- Xcode - Other Linker Flags
- IOS 动态库问答
- iOS 提交审核之IDFA的介绍
- 仿ios右滑销毁activity
- 提高iOS开发效率的小技巧与思路
- 系统相册的多选与单选封装(基于AssetsLibrary)
- 唐巧总结的40个国人iOS技术博客
- iOS OC Quartz学习笔记(一)
- iOS-正则表达式与谓词
- iOS最新手机号码正则表达式
- iOS -键盘显示与隐藏
- IOS点击事件的PickerView和ToolBar
- ios 企业发布
- iOS之下拉放大,上推缩小,一个方法搞定
- iOS 圆角图片
- HP Notebook PCs - Updating the BIOS
- iOS原生App与H5页面交互 离线缓存 笔记
- 总结iOS中runtime的使用