Menu

28 september 2015

Apps omzetten naar Xcode 7 en Swift 2

Retina logo van Xcode app

Heb je al eens een app in Swift gemaakt? Of heb je ooit met voorbeeld-apps gewerkt die je hebt gedownload? En heb je inmiddels de nieuwste versie van Xcode geïnstalleerd? Dan heb je ongetwijfeld al gezien dat er flink wat is veranderd.

De syntax van Swift is gewijzigd: sommige functies en sleutelwoorden bestaan niet meer of zijn vervangen door andere, waardoor programmacode die in Swift 1 is geschreven, moet worden omgezet naar Swift 2.

Gelukkig kan Xcode de meeste programmacode voor je omzetten. Zodra je een app probeert te laden die je met een oudere versie van Xcode hebt gemaakt, krijg je de volgende melding te zien:

01

Wanneer je op Convert klikt, vertelt Xcode je wat het gaat doen: het analyseert je app en laat je daarna alle programmacode zien die is verouderd en die moet worden omgezet naar Swift 2.

apps naar xcode 7

Wanneer je op Next hebt geklikt, gaat Xcode aan het werk. Als er verouderde code is aangetroffen, krijg je twee versies te zien: rechts zie je de oude programmacode en links de nieuwe. Klik op Save, waarna je project wordt bijgewerkt.

apps naar xcode 7

In veel gevallen ben je dan klaar. Er is echter een probleem, dat ontstaat door een foutje in Xcode 7. Zodra je een ‘oude’ app probeert te starten, zie je een storende waarschuwing:

:(null): Directory not found for option ‘-F/
Applications/Xcode.app/Contents/
Developer/Platforms/iPhoneSimulator.platform/
Developer/SDKs/iPhoneSimulator
9.0.sdk/Developer/Library/Frameworks’

apps naar xcode 7

Deze waarschuwing verschijnt omdat Xcode per ongeluk een instelling overneemt in een (nieuwe) target, bedoeld om Xcode automatisch te laten testen.

Om deze waarschuwing te verwijderen, doe je het volgende:

Klik, in de Navigator van Xcode, op het project-icoon van je app:

apps naar xcode 7

In de editor verschijnt informatie over je project. Links daarvan staat de Projects and targets list:

apps naar xcode 7

Klik, in de Projects and targets list, op de target die eindigt op Tests. In de afbeelding hierna is dat BlokkenTests, maar in jouw project staat hier natuurlijk de naam van jouw app, gevolgd door Tests.

apps naar xcode 7

Klik, in de editor, op de Build Settings-tab:

apps naar xcode 7
Scroll naar beneden, tot je bij de rubriek Search Paths bent.

apps naar xcode 7

Klik op de optie Framework Search Paths om deze te selecteren:

apps naar xcode 7
Druk op de Delete-toets om deze instelling te wissen:

apps naar xcode 7

Klaar! Als je de app nu opnieuw start, is de waarschuwing verdwenen.

Video voor overstappers

Speciaal voor ‘overstappers’ van Xcode 6 naar Xcode 7 is er door de iOS Academie een video gemaakt. In deze video zie je wat je allemaal kunt doen om problemen te voorkomen en om die overstap zo goed mogelijk te laten verlopen.

Meer weten over Swift, of wil je leren hoe je zelf apps maakt voor je iPhone of iPad? Als appletips-lezer krijg je 10 euro korting op de nieuwe editie van het populaire eBook Apps bouwen met Swift, uitgegeven door de iOS Academie. Klik hier voor meer informatie.

Wil je zelf apps ontwikkelen met Swift? Dat kan, op appletips maken we je wegwijs in de wereld van Swift, Klik hier voor alle posts, plus lesmateriaal.







Reacties


Er zijn nog geen reacties op dit bericht!

Een reactie toevoegen: