2017-02-04 1 views
8

몇 가지 예 : 신속한 2에서는 NSData 및 NSUrl을 사용했습니다. 신속한 3에서 우리는 데이터와 URL을 가지고 있습니다. 데이터를 alt 키를 누르면 iOS 10 이상에서 사용할 수 있습니다.신속한 3 호환성 및 API 가용성 간의 차이점을 명확히해야합니다.

누군가가 다음을 설명해 주실 수 있습니까? Apple 담당자가 iOS 10 이상에서만 사용할 수 있다고 말하면 해당 앱이 iOS 10 이상인 앱에서만 사용할 수 있다는 의미입니까?

Swift 3은 iOS 8과 호환되지만 Swift 2에서 3으로 변경된 부분에 해당됩니다 (NSData to Data 등). 따라서 Data가 iOS 10 이상에서만 사용 가능할 경우, 스위프트 3가 iOS 8과 호환된다는 것은 무슨 뜻입니까?

본질적으로 API 가용성과 Swift 3 호환성의 차이점에 대해 혼란스러워합니다.

귀하의 도움에 감사드립니다.

답변

3

Apple 담당자가 iOS 10 이상에서만 사용할 수있다면 iOS 10 이상을 대상으로하는 앱에서만 사용할 수 있다는 의미입니까?

아니요. Apple docs의 가용성 부분에는 SDK 가용성 및 대상 OS 가용성이라는 두 가지 종류의 정보가 표시 될 수 있습니다. Data의 경우

Data의 표준 라이브러리 코드는 모든 아이폰 OS의 8 이상에 대한 호환되지만 Data (스위프트 3 표준 라이브러리)을 포함하는 표준 라이브러리는 아이폰 OS SDK 10 이상, 가용성 부분 포함되어 있습니다 애플의 문서 중 "가용성"을 의미한다.

This thread in the Apple's dev forums 도움이 될 것입니다. 일반적으로 Xcode/Swift의 가용성 검사 기능에 의존 할 수 있습니다. 프로젝트의 최소 대상을 iOS 8.0으로 표시했는데 가용성에 대한 경고가 표시되지 않으면 프로젝트에 사용 된 모든 기능이 iOS 8.0 장치에서 작동해야합니다.

bug report을 문서 오류로 보낼 수 있습니다.

+0

감사합니다. 좋습니다. iOS 10 이상에서 사용할 수있는 문구는 다소 모호합니다. i) iOS 10이 설치된 휴대 전화에서만 작동하거나 2) iOS 10 SDK를 사용하는 경우에만 사용할 수 있습니다. 이 토론에서 벗어났습니다 : 'Xcode의 가용성 검사 기능에 의존하십시오'. –