美文网首页
iOS设备及状态

iOS设备及状态

作者: 天地一紫罗 | 来源:发表于2017-03-23 14:42 被阅读0次

一、判断设备

//设备名称   return [UIDevice currentDevice].name;

//设备型号,只可得到是何设备,无法得到是第几代设备

return [UIDevice currentDevice].model;//系统版本型号,如iPhone OS

 return [UIDevice currentDevice].systemVersion;//系统版本名称,如6.1.3

return [UIDevice currentDevice].systemName;

//判断是否为iPhone#define IS_IPHONE (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone)

//判断是否为iPad#define IS_IPAD (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad)

//判断是否为ipod#define IS_IPOD ([[[UIDevice currentDevice] model] isEqualToString:@"iPod touch"])

//判断是否为iPhone5#define IS_IPHONE_5_SCREEN [[UIScreen mainScreen] bounds].size.height >= 568.0f && [[UIScreen mainScreen] bounds].size.height < 1024.0f

二、判断网络连接状态

1、导入SystemConfiguration.framework,并#impor

2、判断设备是否联网

+ (BOOL)connectedToNetwork{

//创建零地

struct sockaddr_storage zeroAddress;

bzero(&zeroAddress, sizeof(zeroAddress));

zeroAddress.ss_len = sizeof(zeroAddress);

zeroAddress.ss_family = AF_INET;

// Recover reachability flags

SCNetworkReachabilityRef defaultRouteReachability = SCNetworkReachabilityCreateWithAddress(NULL, (struct sockaddr *)&zeroAddress);

SCNetworkReachabilityFlags flags;

//获得连接的标志

BOOL didRetrieveFlags = SCNetworkReachabilityGetFlags(defaultRouteReachability, &flags);

CFRelease(defaultRouteReachability);

//如果不能获取连接标志,则不能连接网络,直接返回

if (!didRetrieveFlags)

{

return NO;

}

//根据获得的连接标志进行判断

BOOL isReachable = flags & kSCNetworkFlagsReachable;

BOOL needsConnection = flags & kSCNetworkFlagsConnectionRequired;

return (isReachable&&!needsConnection) ? YES : NO;

}

相关文章

网友评论

      本文标题:iOS设备及状态

      本文链接:https://www.haomeiwen.com/subject/tdugnttx.html