Android Entwicklung unter Ubuntu/Kubuntu

Der erste Schritt um für Android Entwicklung auf einem Ubuntu System zu betreiben ist eine IDE. Dazu wird das Paket eclipse installiert. Danach sollte das Android SDK für Linux unter http://developer.android.com/sdk/index.html heruntergeladen werden und auf der Festplatte entpackt werden.

Dann geht es in den Ordner tools des SDKs und dort wird dann

./android update sdk

ausgeführt. Sollte das fehlschlagen hilft es die Datei ~/.android/androidtool.cfg zu erstellen und dort folgendes hineinzuschreiben

sdkman.force.http=true

Danach sollte der Updatevorgang erneut angestoßen werden.

Beim ersten Start erscheint ein Begrüßungsbildschirm den man schließen kann. Danach sollte man unter Help -> Install new Software die Android Development Tools installieren. Dazu wird in dem sich öffnenden Dialog die URL http://dl-ssl.google.com/android/eclipse/ eingegeben und durch einen Druck auf den Add Site… Button hinzugefügt. Dann klicken wir die Checkboxen für Android Development Tools und Android DDMS an und betätigen dann die Installation mit dem Install… Button. Mittels eines Assistenten wird man nun durch die Installation geleitet. Nachdem die Installation beendet ist empfiehlt Eclipse einen Neustart der Umgebung. Diesem sollte Wunsch sollte man Folge leisten.

Sollte bei der Installation ein Fehler auftreten welcher in etwa so aussieht:

Cannot complete the install because one or more required items could not be found.
Software being installed: Android Development Tools 0.9.4.v200910220141-17704 (com.android.ide.eclipse.adt.feature.group 0.9.4.v200910220141-17704)
Missing requirement: Android Development Tools 0.9.4.v200910220141-17704 (com.android.ide.eclipse.adt.feature.group 0.9.4.v200910220141-17704) requires ‚org.eclipse.gef 0.0.0‘ but it could not be found

sollte die Seite http://download.eclipse.org/releases/galileo/ hinzugefügt werden und bei Work With –All Available Sites– stehen. Wenn das eingestellt ist, kann die Installation ein weiteres Mal in Angriff genommen werden.

Nun benötigt Eclipse die Information wo das Android SDK sich auf der Festplatte befindet. Dazu geht man auf Window -> Preferences -> Android. Dort wählt man den Pfad des Android SDKs aus und bestätigt den Dialog mit OK.

Die grundlegende Konfigurationsarbeit ist damit geleistet. Nun kann mit dem ersten Projekt begonnen werden. Dazu gehen wir auf File -> New -> Project und wählen dort das Android Project aus und klicken dann auf Next. In dem darauffolgenden Dialog geben wir dem Projekt einen Namen z.B. Hello World. Im Feld Package Name geben wir den Namen des Package an z.B. net.seeseekey.hello_world und bei Activity name z.B. hello_world und bei Application name z.B. Hello World und bestätigen das ganze mit dem Finish Button.

Danach wird automatisch das Grundgerüst für eine Android Applikation erzeugt. Sollte es beim Erzeugen der Anwendung der Fehler

Project ‚RuntimeAndroid‘ is missing required source folder ‚gen‘
The project cannot be built until build errors are resolved

auftreten so hilft es die R.java Datei zu löschen. Sie wird danach automatisch neu erzeugt. Auch ein Cleanen des Projektes wirkt manchmal Wunder :)

Wenn wir nun auf den grünen Play Knopf (Run) in der Symbolleiste klicken so startet Eclipse das Programm im Android Emulator. Beim ersten Start sollte allerdings ein Dialog erscheinen welcher einem anbietet ein virtuelles Gerät für den Emulator anzulegen. Nachdem dies geschehen ist, wird das Hello World Programm im Emulator geladen und ausgeführt. Und schon ist das erste Hello World Programm geschrieben :)

Android Emulator mit einer microSD Karte füttern

Standardmäßig ist wenn man den Emulator startet keine SD Karte „eingelegt“. Allerdings lässt sich dies mit wenigen Handgriffen ändern. Als erstes geht man dazu in das Android SDK in den tools Ordner. Dort öffnet man dann eine Kommandozeile (cmd) und gibt folgendes ein:

mksdcard 256M sd-emulator

Natürlich kann man auch größere Karten erzeugen. Dazu muss man nur die Zahl austauschen. Nachdem die Karte erzeugt wurde kopiert man sie an eine passende Stelle im Dateisystem.

Nun müssen wir Eclipse noch dazu bringen das es beim Start des Emulators, diesem sagt das er mit SD Karte starten soll. Dazu gehen wir auf Emulator Run -> Run Configurations bzw. auf Run -> Debug Configurations und wählen die entsprechende Konfiguration aus. Dort klicken wir auf Target und geben bei Additional Emulator Command Line Options folgenes ein:

-sdcard Pfad der SD Image Datei

was dann z.B. so aussehen würde:

-sdcard C:\Temp\sd-emulator

Das war schon. Nun startet der Emulator mit eingelegter SD Karte sobald wir die Anwendung über Eclipse starten :)

Weitere Informationen gibt es unter:
http://www.androiddevelopment.org/2008/11/11/how-to-create-and-use-the-sd-card-with-the-android-emulator/

Frontend für Emulatoren

Möchte man mehrere Emulatoren unter einem einfachen und einheitlichen Interface betreiben so benötigt man ein passendes Frontend. Diese könnte man z.B. für einen dezidierten PC zum Emulatoren spielen benutzen. Eines dieses Frontends ist das unter aktiver Entwicklung stehende MaLa welches unter http://malafe.net/ zu finden ist. Neben MAME unterstützt MaLa alle Emulatoren welche sich über die Kommandozeile anstarten lassen.

Ein weiteres Frontend ist GameBase (http://www.bu22.com/) welches unter der GNU General Public Licence steht und somit Open Source ist. Es ist auch das offizielle Frontend für die GB64 Collection (http://www.gb64.com/).

Emulatoren

Ab und zu überfällt mich ein Anflug von Nostalgie was dann dazu führt das ich meine Emulatoren rauskrame und für drei Tage nicht mehr erreichbar bin. Darum folgt hier eine Liste meiner Meinung nach guter Emulatoren.

Wenn der gute alte Commodore 64 (C64) ruft dann ist VersatIle Commodore Emulator oder kurz VICE die richtige Wahl. Er emuliert neben dem C64 auch andere Commodore Computer wie denn C128, die PET Reihe oder den Plus 4. Beim C65 muss er leider passen. Der Emulator steht unter GPL. Zu finden ist er unter http://www.viceteam.org/

Vom C64 kommen wir zum Game Boy. Für die Emulationen des Game Boy’s und des Game Boy Advance eignet sich der Visual Boy Advance, welcher unter http://vba.ngemu.com/ Dieser wird aber anscheinend seit ein paar Jahren nicht mehr weiterentwickelt. Einen aktuelleren auf Java Basis geschriebenen Emulator kann man unter http://sourceforge.net/projects/javagb/ finden.

Bei den Nintento 64 Emulatoren ist Project 64 (zu finden unter http://www.pj64-emu.com/) immer noch State of the Art. Derr Emulator emuliert so ziemlich jedes Nintendo 64 Spiel welches es auf dem Markt gab. Seit einiger Zeit befindet sich Version 1.7 in der Entwicklung.

Wer einen Gamecube bzw. Wii Emulator such der sollte sich Dolphin anschauen welcher unter http://www.dolphin-emu.com/ Das Google Code Projekt von Dolphin ist unter http://code.google.com/p/dolphin-emu/ zu finden. Der Emulator steht unter GPL.

Wenn es das Nintendo Entertaiment System betrifft so ist Nestopia eine gute Wahl. Der Emulator welcher unter http://nestopia.sourceforge.net/ zu finden ist besticht nich nur durch seine gute Emulation sondern auch durch seine durchdachte Oberfläche.

Was natürlich bei den Nintendo Emulatoren nicht fehlen darf ist ein Emulator für das Super Nintendo. Dort gebe ich dem Emulator Snes9x den Vorzug. Der mittlerweile quelloffene Emulator kann unter http://www.snes9x.com/ bezogen werden. Ein weitere guter SNES Emulator ist ZSNES.

Von Nintendo gleich zur Konkurrenz :) Da geht es dann natürlich um Sony. Für die Playstation 1 ist der Emulator ePSXe (http://www.epsxe.com/) zu empfehlen. Und für die Playstation 2 eignet sich der quelloffene Emulator PCSX2 zu finden unter http://www.pcsx2.net/.

Eine andere interessante Sache bei den Emulatoren ist das Multiple Emulator Super System (M.E.S.S.) welches versucht eine Vielzahl von Systemen anzubieten. Das Projekt sollte weiter verfolgt werden. Die offizielle Seite des Projektes ist unter http://www.mess.org/ zu finden.

Ein weiterer Emulator der in diese Richtung geht ist Mednafen. Er emuliert unter anderem den Atari Lynx, den GameBoy, die PC Engine und andere Systeme.

Weitere Informationen gibt es unter:
http://www.aep-emu.de/Emus.html
http://www.emulator-zone.com/
http://de.wikipedia.org/wiki/Emulator