2016-06-16 17 views
19

Mi chiedevo se è già possibile utilizzare Realm con la versione beta di Swift 3.0.Supporto per Realm per Swift 3.0

Anche se vedo una directory di RealmSwift-swift3.0 nel repository Realm, non riesco a utilizzarla correttamente. Come dovrei installarlo dalla fonte?

risposta

19

È possibile utilizzare Realm con Swift 3.0, ma tenere conto del fatto che la versione corrente è ancora assolutamente sperimentale.

È possibile clonare il ramo master del repository realm-cocoa da GitHub.

Oppure si può utilizzare Cartagine:

github "realm/realm-cocoa.git" "master" 

O se preferite CocoaPods:

pod 'RealmSwift', :git => 'https://github.com/realm/realm-cocoa.git', :branch => 'master' 

Se si utilizza Cartagine, ricordate che è necessario aggiungere quadri Realm e RealmSwift manualmente (ignorare il quadro IBAnimatable):

Project configuration image

In effetti, ho uno dei miei progetti con Xcode 8, Swift 3 e Realm, e funziona perfettamente :)

+2

Ho davvero bisogno del ramo principale? Quando importare questo ramo con Carthage e importare RealmSwift ottengo l'avviso: il file Module è stato creato da una versione precedente del compilatore. Questo ramo è già compilato con XCode 8? – Taco

+1

'sudo xcode-select -switch/Applications/Xcode-beta.app/Contents/Developer' è il comando che ho usato per cambiare gli strumenti da riga di comando predefiniti a Xcode 8. Fatelo prima di usare' carthage update' e tell me se funziona. –

+1

Sì, funziona! Tuttavia, ritengo che ci siano troppi problemi con Swift 3.0, quindi penso di dover aspettare il rilascio. Ad esempio, Swift sembra non consentire modifiche come 'array.appendContentsOf (realm.objects (Label))' a 'array.append (contentsOf: realm.allObjects (ofType: Label))'. E un sacco di altri problemi – Taco

0

Realm ha rilasciato una nuova versione 1.1.0. Se si utilizza Cocoapods, suggerire di controllare questo PR e installare la versione 1.1.0.rc.2 per evitare l'errore di compilazione Use Legacy Swift Language Version.

5

A partire dalla versione 1.1.0, Realm è ufficialmente compatibile con Swift 3.0/Xcode 8.0. Vedi here.

Questa versione offre supporto ufficiale per Xcode 8, Swift 2.3 e Swift 3.0. I framework prefabbricati sono ora realizzati con Xcode 7.3.1 e Xcode 8.0.

Ecco un estratto dalla documentazione di installazione:

Se si utilizza Xcode 8, incollare il seguente nella parte inferiore del vostro Podfile, aggiornamento della versione Swift, se necessario:

post_install do |installer| 
    installer.pods_project.targets.each do |target| 
    target.build_configurations.each do |config| 
     config.build_settings['SWIFT_VERSION'] = '2.3' # or '3.0' 
    end 
    end 
end