Actualización: según Xcode 6 Beta 4
Objetivo de implementación mínima de iOS 7 y OS X 10.9
El compilador Swift y Xcode ahora imponen un objetivo de implementación mínimo de iOS 7 u OS X Mavericks. Establecer un objetivo de implementación anterior resulta en un error de compilación.
De la nota de lanzamiento de Xcode 6
Por lo tanto, mi respuesta anterior (mostrada a continuación) no será aplicable a ningún desarrollo posterior. Swift ya no estará disponible para iOS6 y versiones inferiores
Una aplicación Swift se puede ejecutar en iOS 6. Aunque muchas personas dicen que Swift solo admitirá iOS 7+ y OS X 10.9+, desde mi experiencia no lo es.
He probado una aplicación simple escrita completamente en Swift en un dispositivo iOS 6. Funciona perfectamente bien . Como dice Apple, el código Swift es binario compatible con el código Objective-C. Utiliza el mismo compilador y tiempo de ejecución para crear el binario.
Aquí está el código que he probado:
import UIKit
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
let button = UIButton.buttonWithType(UIButtonType.System) as UIButton
button.frame = CGRectMake(100, 100, 100, 50)
button.backgroundColor = UIColor.greenColor()
button.setTitle("Test Button", forState: UIControlState.Normal)
button.addTarget(self, action: "buttonTapped:", forControlEvents: UIControlEvents.TouchUpInside)
self.view.addSubview(button)
}
func buttonTapped(sender: UIButton!) {
println("buttonTapped")
}
}
Es una aplicación simple, solo agrega un botón mediante programación. Mi aplicación contiene solo dos archivos AppDelegate.swifty ViewController.swift.
Entonces, si no está utilizando ninguna nueva API agregada como parte del SDK de iOS 8 o algunas API específicas de Swift (la API correspondiente no está disponible para Objective-C), su aplicación funcionará sin problemas en iOS 6 o posterior (probado y funcionando), incluso en iOS 5 (no probado). La mayoría de las API en Swift son solo el reemplazo de las API existentes de Objective-C. De hecho, son lo mismo en binario.
Nota: Según Xcode 6 beta 4 para el objetivo de implementación de aplicaciones rápidas, debe ser iOS 7 u OS X 10.9 (consulte la actualización anterior). Así que Swift ya no estará disponible para iOS6 y versiones inferiores