2017-10-02 8 views
2

iOS 및 tvOS에서 사용해야하는 공유 프레임 워크가 있지만 iOS 전용 프레임 워크 (CoreTelephony)를 선택적으로 가져 오려고합니다. 스위프트 문법은 속성을 붙일 수 있다고,하지만이 작동하지 않습니다Swift에서 프레임 워크를 선택적으로 가져 오는 방법은 무엇입니까?

@available(iOS 10.0, *) import CoreTelephony

이 단순히 지원되지 않습니다? iOS 전용 프레임 워크를 가져 오기 위해 하위 클래스를 만들어야합니까? 당신은뿐만 아니라 CoreTelephony를 사용하는 코드를 포장해야합니다

#if os(iOS) 
    import CoreTelephony 
#endif 

:

답변

0

는 스위프트 < = 4.0 당신은 os() 구성 테스트 기능을 사용할 수 있습니다. os()에 대한

가능한 모든 테스트는 다음과 같습니다 OSX, iOS, watchOS, tvOS, Linux, WindowsFreeBSD. 스위프트를 들어

> = 4.1 당신은 또한 canImport() 사용할 수 있습니다

#if canImport(CoreTelephony) 
    import CoreTelephony 
#endif