Я новичок в разработке Apple, и вскоре я буду распространять свое приложение через AppStore. Итак, теперь я использую Swift 3, и по умолчанию для цели развертывания установлено значение iOS 10.0. Это означает, что я не смогу запустить его, например, на iOS 8-9? Потому в Swift 3 я использую новый funcs, которые не доступны в более поздних ОСАХSwift 3 Совместимость с iOS
ответ
Вы можете сделать ваше приложение работать на прошивке 8 & 9 путем установки развертывания Target в одной из этих версий. Swift 3.x совместим с iOS 8 и новее (я не уверен, но он также может быть совместим с iOS 7). Единственное отличие от Swift 2.2 (в отношении системных требований) состоит в том, что вам нужно использовать Xcode 8.
Когда вы устанавливаете целевой объект развертывания в более раннюю версию, чем IOS 10, вы должны знать, что не можете использовать API, которые новый в iOS 10. (за исключением того, что вы используете оператора #available
). Но использование Swift 3 не должно быть проблемой.
Edit: Теперь вы можете загружать приложения, написанные на Swift 3 с помощью Xcode 8.0 GM
Вы должны использовать Swift 3.x (это последняя версия Swift, так как этот ответ был опубликован).
Версия iOS НЕ относится к версии Swift, которую вы должны использовать, вместо этого некоторые из новых предоставленных apis поддерживают минимальную версию ОС. Но, наоборот, это не связано с языком программирования. Например: приложение было создано через Swift 2.x (Deployment Target 9.x) должно работать на iOS 10; При обновлении IDE (xcode) он будет поддерживать по умолчанию последнюю версию языка программирования -Swift-.
ТАКЖЕ: Вы можете сделать:
if #available(iOS 10, *) {
// use an api that requires the minimum version to be 10
} else {
// use another api
}
Надеется, что это помогло.
Этот ответ полезен, но мне любопытно, знает ли кто-нибудь, что Swift 3 совместим с iOS 7? – rtcarlson
@rtcarlson Более ранние версии были совместимы с iOS 7. http://stackoverflow.com/questions/24001778/do-swift-based-applications-work-on-os-x-10-9-ios-7-and-lower Поэтому я думаю, что Swift 3 тоже будет работать. Но у меня нет возможности проверить это. – FelixSFD
@FelixSFD, что требования к версии os, в порядке с el caption? – vaibhav