Cordova-Integration in Visual Studio (Part 5) – iOS Build in der Cloud

Für Crossplatform-Entwickler, die über kein eigenes Mac-System verfügen können/wollen, gibt es dennoch eine Möglichkeit an die nativen Bits für ihre App zu kommen. Adobe Systems stellt mit „PhoneGap Build“ hierfür einen cloudbasierten Dienst zur Verfügung, der die Arbeit der oben beschriebenen lokalen Vorgehensweise für uns übernimmt.

Unter http://build.phonegap.com erreicht man das Browser-Portal, dass den kompletten Prozess bereitstellt. Der Dienst ist für eine App kostenlos. Dabei ist allerdings nicht die Einzigartigkeit der App gemeint, sondern die Anzahl der Apps nebeneinander. Wer zwei PhoneGap Build für 2 Apps parallel verwenden möchte, muss bezahlen. Entfernt man die erste App aus dem Portal und fügt eine neue App hinzu, ist auch diese App wieder kostenlos.

BuildPhoneGapIntro

 

Um den Dienst nutzen zu können, wird ein Adobe-Account oder ein Github-Account benötigt. Nach dem Einstieg in das Portal ist es über den Button „+new app“ möglich, dem Service eine neue App hinzuzufügen. Die Bereitstellung der Sourcen die kompiliert werden soll, kann entweder als Zip-File oder als Github-Repo zur Verfügung gestellt sein.

BuildPhonegapNewApp

In beiden Fällen erwartet der Dienst die standardmäßige PhoneGAP-Projektstruktur (Details zu diesem Thema gibt’s im Teil 2 dieser Blogreihe zu Cordova), also den Inhalt des „www“ – Ordners und die im Root liegende „Config.XML“. Aus der Config-Datei nimmt sich der Service beim Einrichten auf dem Server die Informationen wie App-Name und Version. Außerdem wird vom Service an Hand der dort gehaltenen Informationen die notwendigen Plugins auf dem Server zum Projekt hinzugeladen. Wenn die Config.XML nicht mit hochgeladen wird,  sind die oben genannten Daten händisch im Portal einzutragen.

In der Struktur eines Visual Studio Cordova-Projektes ist dieser WWW-Ordner nicht enthalten. Allerdings wird dieser beim Bauen der Solution im Hintergrund erstellt und in einem Build-Ordner gespeichert.

bldFolder

Nach dem erfolgreichen Hochladen der Sourcen, wird eine Projekt-Detailseite mit den Infos aus der Configdatei angezeigt.

BuildPhoneGapAppInfo

 

Sind alle Werte wie gewünscht, kann über die Aktivierung des Knopfes „Ready to Build“ der Bauprozess in der Cloud angestoßen werden. PhoneGap Build startet drauf hin mit dem Kompilieren für die drei üblichen Verdächtigen Ökosysteme.

BuildPhonegapAfterFirstBuild

 

Ist man der Anleitung bis zu diesem Punkt gefolgt, ist es per Definition unvermeidlich, dass der Build für iOS fehlschlägt. Grund hierfür sind die fehlenden Informationen zum Apple Developer Account, der dazugehörigen iOS-Subscription und dem Provisioning-File. Auch der Build-Prozess in der Cloud verlangt auch immer nach diesen Komponenten. Um diesen Fehler zu vermeiden, muss die Zertifikatsdatei zum Developer Account sowie das Provisioning-File aus dem Apple Developer Portal geladen und lokal zwischengespeichert werden. Danach muss in der Combobox die bisher mit „No key selected“ gefüllt ist „add a key“ ausgewählt die beiden lokalen Dateien hochgeladen werden. Mit einem „Rebuild“ für die iOS Plattform wird der Build neu angestoßen und mit den neu hinzugefügten Informationen erfolgreich erstellt.

Der fertige native App-Code kann entweder durch einen Download auf das lokale Entwicklungssystem und dem dementsprechenden Deployment-Tool auf die Geräte geladen werden, oder (sofern die Endgeräte dies unterstützen) per einlesen des QR-Codes direkt auf das gewünschte Endgerät übertragen und installiert werden.

Der App Code kann jederzeit mit einem neuen Download eines Zip-Files oder Github ein Update erfahren. Ein Rebuild verwendet den neuen Code. Wer die App wieder löschen möchte, um z.B. eine neue App kostenlos zu bauen, findet die Möglichkeit dazu unter „Settings“ ganz unten.

Leave a reply

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>