Un parco giochi ha accesso a strutture esterne se fa parte di un'area di lavoro che costruisce un obiettivo configurato per accedere a tali strutture.
Se si desidera aggiungere un parco giochi a un progetto di carthage esistente, è sufficiente salvare il progetto come spazio di lavoro (File> Salva come area di lavoro ...), creare il target e il gioco è fatto.
Se si desidera distribuire un parco giochi con framework di terze parti, è necessario creare uno spazio di lavoro fittizio. Ecco un passo per passo per esempio un parco giochi con il quadro RxSwift:
Creare un nuovo progetto Xcode di tipo Cross-platform> Altro> Vuoto. Chiamalo RxPlayground.
Questo creerà questa struttura RxPlayground/RxPlayground.xcodeproj e aprirà un Xcode vuoto.
Scarica RxSwift con Cartagine
- Crea una Cartfile con questa linea:
github "ReactiveX/RxSwift" "swift4.0"
- Run Cartagine con
carthage update --platform iOS
.
Aggiungi un parco giochi al progetto.
- Fare clic su File> Nuovo> Parco giochi ...
- Scegliere l'iOS> Modello vuoto e il nome Rx.playground
- Fare clic destro sul nodo del progetto e scegliere “Aggiungi file alla RxPlayground”.
- Selezionare Rx.parco giochi e aggiungilo.
creare un'area di lavoro
- Fare clic su File> Salva con nome dello spazio di lavoro ...
- Salva come Rx.xcworkspace
Copiare i quadri nella directory prodotti.
- Chiudere il progetto e aprire la Rx.xcworkspace
- Creare un cross-platform> Altro> aggregata. Nome è RxAggregate
- Creare una fase di script Nuovo Run con il seguente contenuto:
cp -rv "${SRCROOT}/Carthage/Build/iOS/" "${BUILT_PRODUCTS_DIR}/${FRAMEWORKS_FOLDER_PATH}"
A questo punto, Xcode e il Finder simile a questa:

Notare che Carthage/e Cartfile.resolved appaiono quando si esegue Carthage, Senza di essi, il tuo parco giochi sarà solo pochi K.

Infine, costruire il progetto (⌘B). Ora è possibile utilizzare il quadro nel vostro parco giochi:
//: Playground - noun: a place where people can play
import RxSwift
_ = Observable<Void>.empty()
.subscribe(onCompleted: {
print("Completed")
})
A volte la prima volta che si genera (⌘B) Xcode non si accorge della nuova disciplina (sigh). Quello che faccio è cliccare sulla destinazione e tornare a un file sorgente, o riaprire il progetto. Non ho una spiegazione del perché questo accada.
eh? ho bisogno di supporto per alcuni framework nel parco giochi, ma non nel progetto :) –
Questi sono i passaggi necessari per farlo funzionare nel parco giochi. Che tu usi il framework nel tuo progetto dipende da te. – Niels
Ho lo stesso problema. L'ho fatto. Ma non cambia. Dovrei creare un file di gioco? –