iOS 후방 호환성: 만료된 인터페이스를 검색하는 방법

1435 단어
4.3 이하 호환성을 예로 들면 프로젝트 사전 컴파일 헤더 파일(xx.pch)에 다음 코드를 추가합니다.
#import <Availability.h>
#define __AVAILABILITY_INTERNAL__IPHONE_3_2 __AVAILABILITY_INTERNAL_DEPRECATED
#define __AVAILABILITY_INTERNAL__IPHONE_4_0 __AVAILABILITY_INTERNAL_DEPRECATED
#define __AVAILABILITY_INTERNAL__IPHONE_4_1 __AVAILABILITY_INTERNAL_DEPRECATED
#define __AVAILABILITY_INTERNAL__IPHONE_4_2 __AVAILABILITY_INTERNAL_DEPRECATED
#define __AVAILABILITY_INTERNAL__IPHONE_4_3 __AVAILABILITY_INTERNAL_DEPRECATED

그리고 Warning에서 더 이상 지원하지 않는 방법을 열거하고 하나하나 검사하며 프로그램crash를 일으킬 수 있는 곳에if([xx respond Toselector: (deprecated Method)])를 추가합니다.)판단
다음 코드를 사용하여 Warning을 error로 만들 수도 있습니다.
#import <Availability.h>
#define __AVAILABILITY_INTERNAL__IPHONE_3_2 __AVAILABILITY_INTERNAL_UNAVAILABLE
#define __AVAILABILITY_INTERNAL__IPHONE_4_0 __AVAILABILITY_INTERNAL_UNAVAILABLE
#define __AVAILABILITY_INTERNAL__IPHONE_4_1 __AVAILABILITY_INTERNAL_UNAVAILABLE
#define __AVAILABILITY_INTERNAL__IPHONE_4_2 __AVAILABILITY_INTERNAL_UNAVAILABLE
#define __AVAILABILITY_INTERNAL__IPHONE_4_3 __AVAILABILITY_INTERNAL_UNAVAILABLE

호환되지 않는 방법은 컴파일 오류로 표시됩니다.
참조:http://stackoverflow.com/questions/7790497/iphone-app-developed-with-sdk-4-2-requires-backward-compatibility-with-ios-3-1
그리고 이거 괜찮아요.
iOS Support Matrix
http://iossupportmatrix.com/versions/summer-2013-version-2-4-1

좋은 웹페이지 즐겨찾기