Processing Apps für Android X – Erstellen einer .apk-Datei aus .pde


Nun, da wir das Projekt Pure Pong! soweit fertig gestellt haben, versuchen wir jetzt es zu veröffentlichen. Da es in Processing derzeit keine Möglichkeit gibt, das per Knopfdruck zu erledigen, müssen wir hier selber Hand anlegen. Dafür gibt es auch eine Step by Step Anleitung von Eric Pavey, die aber bei mir auf Ubuntu 10.10 nicht genau funktionierte. Sehr hilfreich war bei mir dann die Anleitung von Google selbst.

Deshalb hier noch meine Erfahrungen Schritt für Schritt:

  1. Processing Sketch Exportieren
    Dabei erhalten wir eine .pde -Datei im Projektverzeichnis im Sketchbook.
  2. Einen geheimen Schlüssel erstellen
    In Ubuntu 10.10 sind alle notwendigen tools schon installiert. sudo keytool -genkey -v -keystore NAMEDESPROGRAMMS-release-key.keystore -alias DEINNAMEHIER -keyalg RSA -keysize 2048 -validity 10000
    Bevor der Schlüssel erstellt wird, muss man noch einige Fragen beantworten, die bei der Erstellung eine Rolle spielen. Wenn das Programm keytool durchgelaufen ist, wird im aktuellen Verzeichnis eine Datei NAMEDESPROGRAMMS-release-key.keystore erstellt.

    Vorsicht: der Schlüssel muss unbeding gesichert werden, denn für etwaige Updates muss das neue Programm wieder mit dem originalen Schlüssel signiert werden.

  3. Das Programm compilieren
    Unter Ubuntu brauchte ich dafür nur in das Sketchbook-Verzeichnis von Pure Pong! und dann in den Ordner android. Mit dem Befehl

    ant release

    wird dann ein neues Unterverzeichnis /bin erzeugt in der sich ein Verzeichnis classes und folgende Dateien befinden classes.dex  PurePong_.ap_  PurePong_-unsigned.apk.

  4. Das Programm signierenROGRAMMS-release-key.keystore -alias DEINNAMEHIER -keyalg RSA -keysize 2048 -validity 10000
    Die PurePong_-unsigned.apk ist wie der Name schon sagt, nicht signiert. Das erledigen wir mit dem Programm jarsigner. Ein vollständiger Komandozeilen-Befehlt sieht dann etwa so aus:

    jarsigner -verbose -keystore NAMEDESPROGRAMMS-release-key.keystore /VOLLSTÄNDIGER_PFAD+NAME-unsigned.apk DEINNAMEHIER

    Man muss dann noch das vorher bei der Schlüsselerstellung gewählte Passwort eingeben und schon laufen einige Zeilen Code mit adding und signing auf der Konsole durch und schon ist die Sache erledigt! Eine Erfolgsmeldung oder ähnliches gibt es bei mir nicht.

  5. Erstellen der fertigen .apk -Datei
    Hier kommt das Programm zipalign zum Einsatz. Es befindet sich im Installationsverzeichnis der Android SDK im Unterordner tools. Von dort aus gestartet macht es aus unserer Datei eine fertige .apk- Datei.

    /PFAD ZU DEINEM HOME VERZEICHNIS/android-sdk-linux_x86/tools/zipalign -v 4 /VOLLSTÄNDIGER_PFAD+NAME-unsigned.apk GEWÜNSCHTER_NAME.apkWenn das Programm fertig ist hat man ein fertige .apk -Datei zur Verfügung

Zu guter Letzt meine purepong.apk zum Download (mit RechtsClick – Datei speichern unter)!!!

Veröffentlichen im Market – Vorbereitungen

Die oben beschriebene Art der Veröffentlichung ist sozusagen die „basic“ Variante. Will man seine App im Market platzieren, sollte man noch einige Schritte ergänzen. Eine englischsprachige Anleitung gibt es direkt von Google.

3 Dinge sind hier wichtig:

  • Die App muss mit einem Sicherheitsschlüssel signiert werden, der bis 2033 gültig ist. Das habe wir mit dem Schlüssel oben erfüllt, da wir das keytool mit einer -validity 10000 aufgerufen haben. Diese Einstellung erzeugt einen Schlüssel mit einer Gültigkeit von 10000 Tagen, also ~27 Jahren.
  • Die Datei AndroidManifest.XML muss unbedingt einen Eintrag android:versionCode und android:versionName enthalten. Diese werden von Processing automatisch beim Exportieren erstellt und man muss sich nicht darum kümmern, wenn man das nicht ausdrücklich will.
  • Weiters müssen im Application-Tag noch die Attribute android:label und android:icon gesetzt sein, was Processing ebenfalls schon automatisch erledigt.

Ich habe dann noch ein eigenes Icon erstellt. Hier muss man allerdings gleich 3 mit verschiedenen Auflösungen generieren, damit es möglichst vielen Geräten funktioniert. Alle sind im Sketchbook-Ordner des Projekts unter /android/res/drawable zu finden. Meine Empfehlung: Das größte Icon im Ordner /drawable-hdpi mit Gimp öffner und bearbeiten. Ist es so, wie man es sich vorstellt, kann man es dann nach unten skalieren und auch in die anderen Ordner mit den entsprechenden Auflösungen speichern.

Der Android Market bietet die Möglichkeit das Lizensierungs-Modell von Google zu verwenden. Ich werde das in diesem Fall nicht tun. Infos darüber gibt es hier: Lizensierung für den Android Market.

Veröffentlichen im Market

Um Apps auf dem Market veröffentlichen zu können, braucht man, wie nicht anders zu erwarten eine Konto bei Google. Damit kann man sich dann auf dieser Seite für den Market anmelden: http://market.android.com/publish

  • Hier ist dann erst einmal ein Formular auszufüllen, das unter anderem auch nach der Telefonnummer fragt! Typisch Google.
  • Weiters sind 25 USD zu bezahlen (per Kreditkarte)
  • Danach muss man nur noch alles akzeptieren, was Google verlangt.

Geschafft. Nun kann man seine App in den Market hochladen.

Interessanterweise hatte ich in weiterer Folge die größten Probleme damit, einen Screenshot von meinem Game zu erzeugen. All gratis im Market verfügbaren Programme versagten auf meinem Phone. Ich habe dann den Inhalt einfach abfotografiert. Ist zwar nicht so schön, aber es funkt.

Geschafft: Game ist im Market unter: https://market.android.com/search?q=PurePong!

Probiert es aus, ich freue mich über jedes Feedback!

Advertisements

5 Kommentare

  1. Pingback: Processing – Über dieses Weblog « processing – tutorial

  2. Nicki

    Wieso machst Du denn nicht einfach einen Screenshot im Emulator?

    • koberger

      Zum Testen ist das auch möglich. Um aber eine App auf dem Market zu veröffentlichen sollte man schon einen eigenen Schlüssel nach der Google-Anleitung erstellen.

  3. Sandra

    Und was mach ich falsch, wenn beim update der app folgender hinweis kommt?
    Der im Manifest angegebene Symbolpfad „“ ist nicht in der APK-Datei enthalten.
    Ich verzweifel hier grad schon 😦

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s

%d Bloggern gefällt das: