Vor einigen Tagen bekam ich eine eMail von Corona Labs die ankündigte, dass Corona SDK Pro nun für alle kostenlos verfügbar sein wird. Außerdem sollen neue Plattformen unterstützt werden: OSX und Windows! Große Neuigkeiten.

Also lud ich die neueste Version herunter und probierte meine alten Projekte aus. Sie liefen - aber eben nur im Simulator. Um die Apps auf den Geräten zu testen, bedarf es einer Apple Developer Subscription. Hat man sich als Entwickler angemeldet und den Obolus gezahlt, erhält man, nebst einem Zertifikat, ein Provisioning Profile, das einem erlaubt seine Apps zu signieren. Erst dann kann man diese Apps auf den Geräten installieren oder im App Store veröffentlichen.

Ein Apple Jahresabonnement ist aber, mit knapp 100€ (3,65€ pro Tag), nicht gerade günstig für jene Programmierer, dessen Apps sich noch in der Entwicklung befinden. Man kann kaum voraussagen wann diese Apps das Tageslicht erblicken und ob überhaupt. Während dessen läuft das Abo unaufhaltsam weiter.

Corona SDK verlangt von euch eine Unterschrift für euere Apps und lässt, ohne eine solche, keine fertigen .ipa Dateien exportieren. Außerhalb des Simulators ist also Schluss. Das kann man umgehen!

*Corona SDK Export mit einer abgelaufenen Unterschrift. Weiter unten findet ihr Quellen für neue Provisioning Profiles.*

Die Lösung: man lässt seine UDID, also die einzigartige ID eines Gerätes, von jemandem registrieren, der bereits angemeldeter Apple Entwickler ist!

Das ist keineswegs illegal, sondern weit verbreitete Praxis. Apple Abonnenten erhalten jedes Jahr eine gewisse Anzahl freier Slots, um Betatester zu registrieren. Oder sie sind Unternehmen, die ihre angestellten Programmierer registrieren. Jedenfalls, wenn man mit seinem eigenem Gerät, vom o.g. Entwickler registriert worden ist, kann man mit dessen Unterschrift seine eigenen Apps, für eben dieses Gerät, signieren.

Zwei Gedanken dazu: 1. Ein Provisioning Profile gilt immer für ein Gerät. Möchte man also auf mehreren Geräten testen, muss man alle UDID's registrieren lassen. 2. Man unterschreibt für eigene Apps mir fremder Signatur.

Fazit: Für mich, einen einfachen Bastler im Entwicklungsstadium, ist das eine sehr kostengünstige Alternative zum Apple Abo. Wenn ich soweit bin, hole ich mir die Apple Developer Subscription und signieren meine Apps mit meiner eigenen Unterschift, um sie anschließend im App Store zu veröffentlichen. Bis dahin kostet mich der Spaß gerade einmal ~5€ für ein ganzes Jahr.

Nachtrag

Mit der o.g. Technik und dem Programm iModSign lässt sich übrigens auch ein Jailbreak simulieren! Die Idee ist heruntergeladenen Apps neu zu signieren und sie zu seinen eigenen zu machen. Dadurch kann man sie auf seinen iDevice's installieren. Aber das habt ihr nicht von mir! 😏

Übrigens funktioniert die ganze Geschichte auch mit dem Framework LÖVE2D, das Codea sehr ähnelt - aber derzeit nur für OSX, Windows und Linux verfügbar ist. Jedoch können diese Plattformen für einige Entwickler sehr interessant sein, da der Mac App Store noch ziehmlich spärlich bestückt ist, was Spiele angeht. Und laut Quellcode tüftelt der Löve2D Entwickler derzeit an einem iOS Port! Hier ist eine Anleitung, die beschreibt wie man den Löve2D Wrapper für den App Store vorbereitet.


Quellen für UDID Regestrierungen:
Vorwiegend wird PayPal als Zahlungsmethode angeboten. Das ist einfach und schnell. Nach der Registrierung erhält man alle benötigten Dateien und die Anleitung per eMail.