获取 设备 版本 型号 是否联网
2014-02-17 11:03
155 查看
如何判断IOS的设备版本型号
一、判断设备
1、导入SystemConfiguration.framework,并#import<SystemConfiguration/SCNetworkReachability.h>
2、判断设备是否联网
PS:如果设备已经插上,但是XCode不显示当前设备,仍为iOS Device的状态,如下图所示
解决步骤
1.点击XCode右上角的Organizer->Devices,看自己的设备是否为绿灯状态,如果为黄灯或是没有灯,说明设备未连接好,请重新再插一次
2.如果设备已经连接好,但是还是不显示,则说明是系统版本不匹配,如果设备是ios5的系统,则XCode的iOS Deployment Target 必须是5.0或以上,XCode才可分辨此设备
选中TARGETS->Summary-Deployment Target 修改iOS版本号(假设设为6.1)
如果还是不识别,在PROJECT->Info->iOS Deployment Target下将版本号也修改为6.1
一、判断设备
01 | //设备名称 |
02 | return [UIDevice currentDevice].name; |
03 |
04 | //设备型号,只可得到是何设备,无法得到是第几代设备 |
05 | return [UIDevice currentDevice].model; |
06 |
07 | //系统版本型号,如iPhone OS |
08 | return [UIDevice currentDevice].systemVersion; |
09 |
10 | //系统版本名称,如6.1.3 |
11 | return [UIDevice currentDevice].systemName; |
01 | //判断是否为iPhone |
02 | #define IS_IPHONE (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone) |
03 |
04 | //判断是否为iPad |
05 | #define IS_IPAD (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) |
06 |
07 | //判断是否为ipod |
08 | #define IS_IPOD ([[[UIDevice currentDevice] model] isEqualToString:@"iPod touch"]) |
09 |
10 | //判断是否为iPhone5 |
11 | #define IS_IPHONE_5_SCREEN [[UIScreen mainScreen] bounds].size.height >= 568.0f && [[UIScreen mainScreen] bounds].size.height < 1024.0f |
二、判断网络连接状态
1、导入SystemConfiguration.framework,并#import<SystemConfiguration/SCNetworkReachability.h>2、判断设备是否联网
01 | + ( BOOL )connectedToNetwork{ |
02 |
03 | //创建零地址,0.0.0.0的地址表示查询本机的网络连接状态 |
04 |
05 | struct sockaddr_storage zeroAddress; |
06 |
07 | bzero(&zeroAddress, sizeof (zeroAddress)); |
08 | zeroAddress.ss_len = sizeof (zeroAddress); |
09 | zeroAddress.ss_family = AF_INET; |
10 |
11 | // Recover reachability flags |
12 | SCNetworkReachabilityRef defaultRouteReachability = SCNetworkReachabilityCreateWithAddress(NULL, ( struct sockaddr *)&zeroAddress); |
13 | SCNetworkReachabilityFlags flags; |
14 |
15 | //获得连接的标志 |
16 | BOOL didRetrieveFlags = SCNetworkReachabilityGetFlags(defaultRouteReachability, &flags); |
17 | CFRelease(defaultRouteReachability); |
18 |
19 | //如果不能获取连接标志,则不能连接网络,直接返回 |
20 | if (!didRetrieveFlags) |
21 | { |
22 | return NO; |
23 | } |
24 | //根据获得的连接标志进行判断 |
25 |
26 | BOOL isReachable = flags & kSCNetworkFlagsReachable; |
27 | BOOL needsConnection = flags & kSCNetworkFlagsConnectionRequired; |
28 | return (isReachable&&!needsConnection) ? YES : NO; |
29 | } |
三、设备不显示的解决办法
PS:如果设备已经插上,但是XCode不显示当前设备,仍为iOS Device的状态,如下图所示解决步骤
1.点击XCode右上角的Organizer->Devices,看自己的设备是否为绿灯状态,如果为黄灯或是没有灯,说明设备未连接好,请重新再插一次
2.如果设备已经连接好,但是还是不显示,则说明是系统版本不匹配,如果设备是ios5的系统,则XCode的iOS Deployment Target 必须是5.0或以上,XCode才可分辨此设备
选中TARGETS->Summary-Deployment Target 修改iOS版本号(假设设为6.1)
如果还是不识别,在PROJECT->Info->iOS Deployment Target下将版本号也修改为6.1
相关文章推荐
- 获取设备型号,app版本,提交时间,网络类型等信息
- 获取手机设备型号,厂商,手机版本,IMEI等信息
- 【Android】获取设备型号、SDK版本及其系统版本
- Android获取设备型号、SDK版本及其系统版本
- 安卓获取设备的系统类型,系统版本,手机生产厂商和手机型号
- ios获取手机型号、系统版本、设备唯一标识符、手机运营商等
- Android获取设备型号、SDK版本及其系统版本
- 获取设备型号、SDK版本及其系统版本
- iOS获取屏幕宽高、设备型号、系统版本信息
- 代码记录--代码获取设备型号和系统版本(utsname)
- iOS如何获取屏幕宽高、设备型号、系统版本信息
- 【Android】获取设备型号、SDK版本及其系统版本
- android 系统版本信息工具类 获取设备型号 设置屏幕亮度 软键盘 获取屏幕高度宽度
- Swift - 获取应用名称、应用版本、设备型号、系统版本等信息
- iOS-获取Model(设备型号)、Version(设备版本)、app(程序版本)等
- Swift - 获取应用名称、应用版本、设备型号、系统版本等信息
- iOS获取设备型号 系统版本(最新iPhone5s)
- ios swift 获取设备型号 版本
- 获取手机版本,手机型号,系统版本,手机设备唯一序列号,手机应用版本,手机网络类型的总结
- iOS 获取手机的型号,系统版本,设备名称等