프로가 되자.

post search result

iPhone 버전와 관련된 글 1개를 찾았습니다.

  1. 2009/09/30 iPhone 버전 판별하기

iPhone 버전 판별하기

iPhone 개발을 하다 보면 컴파일 시 버전을 판단해야 되는 경우가 있습니다.

단순히 버전만을 체크할 경우

#define __IPHONE_2_0     20000  
#define __IPHONE_2_1     20100  
#define __IPHONE_2_2     20200  
#define __IPHONE_3_0     30000

와 같은 매크로를 사용하면 됩니다. (Availability.h에 선언되어 있습니다)
즉 다음과 같이..

#ifdef __IPHONE_3_0
// 3.0일 때 처리
#endif

하면 되죠.
그런데 "현재 버전"의 "이상", 즉 "2.2 이상에서만"이라는 조건은 여러개의 항목들을 전부 조합하여 사용할 수도 있지만, 다음과 같은 방법을 이용하여 판단할 수 있습니다

#if defined(__IPHONE_3_0) && (__IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_3_0)


__IPHONE_OS_VERSION_MIN_REQUIRED는 현재 버전에서 지원되는 최소 버전이며, __IPHONE_OS_VERSION_MAX_ALLOWED는 현재 버전에서 지원되는 최대 버전입니다.
따라서 __IPHONE_OS_VERSION_MAX_ALLOWED를 이용하면 "현재 버전에서 지원되는 최대 버전" 이하/이상 등의 조건을 사용할 수 있습니다.

이 때 주의할 점은, 2.0의 경우 __IPHONE_3_0이라는 매크로가 정의 되어 있지 않기 때문에 defined()를 이용하여 정의 되어 있는지 먼저 검사하여야 정확한 버전 비교가 됩니다.
크리에이티브 커먼즈 라이센스
Creative Commons License
2009/09/30 11:23 2009/09/30 11:23

top

About this post

이 글에는 아직 트랙백이 없고, 아직 댓글이 없고, 태그가 달려있으며,
2009/09/30 11:23에 작성되었습니다.

◀ recent : [1] : previous ▶

blog information

프로가 되자.
BLOG main image
빗소리를 먹는 사람.
RSS 2.0Tattertools
최근 글 최근 댓글 최근 트랙백
태그 구름사이트 링크