• 如何判断IOS的设备版本型号


    一、判断设备
    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

  • 相关阅读:
    show master status, show slave status中的Executed_Gtid_Set
    MySQL分库分表
    数据库的读锁和写锁在业务上的应用场景总结
    MySQL死锁分析
    Java接口幂等性
    MySQL读写分离原理
    mysql 安装参考
    关于我
    【2020五校联考NOIP #6】最佳观影
    【2020五校联考NOIP #6】三格缩进
  • 原文地址:https://www.cnblogs.com/liuxp1990/p/3497022.html
Copyright © 2020-2023  润新知