본문 바로가기

프로그래밍/iOS

[iOS] 현재 기기가 아이패드2인지 확인하는 코드

iPad2도 지원해 달래서 카메라를 확인해보니


ipad2와 4혹은 air사이에 카메라 해상도가 달라져 분기처리가 필요했다.


그 때 iPad2인지 확인하는 코드


1. 확인 코드

BOOL previPad2 = NO;

NSString *platform = [self platform];

NSArray *auxArray = [platform componentsSeparatedByString:@","];

        

if ([[auxArray objectAtIndex:0] rangeOfString:@"iPad"].location != NSNotFound) {

   int version = [[[auxArray objectAtIndex:0

   stringByReplacingOccurrencesOfString:@"iPad" withString:@""]       

   intValue];

   if (version == 1 || version == 2)

   {

      int minor = [[auxArray objectAtIndex:1] intValue];

      if (minor < 5 // 2,5 ~ 2,7 iPad Mini

         previPad2 = YES;

   }

 

}

위와 같이 작성하고 previPad2가 YES인 경우가 iPad2

iPad1을 쓸 일은 없을터이니(iOS8지원 기계는 iPad2부터)


2. platform 함수

- (NSString *)platform

{

    size_t size;

    sysctlbyname("hw.machine", NULL, &size, NULL, 0);

    char *machine = (char*)malloc(size);

    sysctlbyname("hw.machine", machine, &size, NULL, 0);

    NSString *platform = [NSString stringWithUTF8String:machine];

    free(machine);

    

    return platform;

 

}