Nichts als die Wahrheit

2. Oktober 2010

Sony Ericsson Xperia X10 Update – Ein Trauerspiel

Filed under: Android, Kritik, linux, Open Source, windows — Argeleb @ 13:14

Es ist ein Trauerspiel! Zunächst möchte ich vorweg schicken, dass das Sony Ericsson Xperia X10 eigentlich ein hervorragendes Smartphone ist, und dass ich damit sehr zufrieden bin. Allerdings bin ich nicht unbedingt das Maß aller Dinge, wenn es um Mobiltelefone geht, denn ich brauche im Grunde genommen gar keines. Andere, die mehr mit ihrem Smartphone machen, als es im Wohnzimmer herumliegen zu lassen, hätten gerne aktuelle Software auf ihrem Gerät.

Sony Ericsson wurde in letzter Zeit zu Recht dafür kritisiert, dass sie ein brandneues Gerät (erschienen Anfang 2010), mit einer „veralteten“ Software ausliefern (Android 1.6). Sony Ericsson wird jedoch nicht müde zu betonen, dass ein Update auf die Version 2.1 demnächst veröffentlicht werden soll. Das ist insofern lustig, weil schon seit geraumer zeit, Android 2.2 aktuell ist. Damit warten die Anwender des X10 also auf ein Update auf eine heute bereits veraltete Software. Aber als wäre das nicht schon schlimm genug, verzögert sich dieses „Update“ auch noch. Zunächst war als Termin der September 2010 vorgesehen, aber selbst dieser verspätete Termin wurde wieder verschoben.

Man spekuliert mittlerweile, dass, wenn das Update endlich erscheint, bereits Android 3.0 aktuell sein wird. Es wird also spannend sein zu sehen, was zuerst kommt, Android 2.1 auf dem X10 oder Android 3.0.

Aber damit ist das Trauerspiel um Sony Ericsson leider noch nicht zu Ende. Wie gesagt, mache ich nicht viel mit meinem X10, daher kann ich die veraltete Software durchaus verschmerzen. Wenn jedoch das Update dann mal kommen sollte, dann werde ich es natürlich auf meinem Telefon installieren. Daher habe ich mich auf den Seiten von Sony Ericsson schon mal umgesehen, wie man dieses Update denn installieren wird.

Es gibt dafür den sogenannten Update-Service. Eine Software, mit deren Hilfe man die Software auf dem X10 aktualisieren kann. Mal abgesehen davon, dass es eine Frechheit ist, Microsoft Windows für ein Update eines Telefons vorauszusetzen, dass unter Linux läuft, ist es von den Software-Entwicklern von Sony Ericsson auch noch unheimlich dumm!

Ich habe die Software heruntergeladen, in der Hoffnung, dass es möglich ist, sie mit Wine zum Laufen zu bringen. Die Installation verlief problemlos und die Software lies sich auch starten, aber die Bedienung war mehr oder weniger nicht möglich, was mein Vertrauen in diese Software so sehr erschüttert hat, dass ich auf einen Einsatz mit meinem Handy verzichtet habe.

Verschobene Buttons in der Oberfläche

Verschobene Buttons in der Oberfläche

Während der Installation ist mir jedoch aufgefallen, dass auch ein JRE installiert wird. Moment! Eine Java Runtime Environment? Hm, dann müsste es sich bei dieser Software ja um eine Java Software handeln. Und Java Software sollte doch prinzipiell platformunabhängig sein.

Meine Hoffnung war also, dass das Windows-Program nur ein EXE-Wrapper für eine Java Software sei und durch die Verwendung der Linux-Version von Java die Software besser funktionieren könnte. Daraufhin habe ich das Installations-Verzeichnis näher untersucht und musste zu meinem Erstaunen feststellen, dass es sich bei dem Programm um eine Eclipse RCP-Anwendung handelt. Als Eclipse Software-Entwickler, der mit RCP einiges an Erfahrung hat, weiß ich, dass Eclipse RCP-Anwendungen auf den Plattformen Windows, Linux und MacOS und den Architekturen x86, x86_64 laufen. Und das schöne ist, dass man dafür nicht einmal besonders viel Aufwand betreiben muss. Man benötigt lediglich das RCP-Delta-Pack und einen PDE-Build (ich empfehle den Entwicklern von Sony Ericsson mal diesen Link als Einstieg zum Thema Build einer Eclipse RCP Anwendung)

Man könnte jetzt natürlich einwenden, dass die Kommunikation mit dem Gerät über die USB Schnittstelle zu plattformspezifisch ist, und daher keine Version für Linux und MacOS zu Verfügung gestellt werden kann. Aber das dürfte kein nennenswertes Problem sein, da  Sony Ericsson für die Kommunikation scheinbar die Bibliotheken von SerialIO verwendet (im Plugins-Verzeichnis befinden sich folgende Dateien:  com.serialio_2.10.9.13.jar und com.serialio.win32.x86_2.10.2.0.jar). In meiner Arbeit verwenden wir ebenfalls die Bibliotheken dieses Herstellers und daher weiß ich, dass es von denen ein Multiplattform-Paket gibt (für alle oben genannten Plattformen und noch viel mehr).

Fazit

Es sollte doch für ein Unternehmen, wie Sony Ericsson, möglich sein, wenn sie schon Multi-Plattform Software wie Eclipse, Java und SerialIO einsetzen, dass sie auch ihre Software für Linux und MacOS anbieten. Auf der einen Seite gibt mir das natürlich Hoffnung, aber auf der anderen Seite bin ich auch maßlos enttäuscht von der Dummheit und/oder Ignoranz des Unternehmens. Schade!

Advertisements

27. März 2010

Hello Android!

Filed under: Android, Entwicklung, Tutorial, ubuntu — Argeleb @ 16:41

Schritt 1: Installation des Android SDK

Um Android Anwendungen entwickeln zu können ist es nötig ein Android SDK zu installieren. Auf der Web-Site des Android Projekts gibt es die Auswahl, für welches Betriebssystem man das SDK herunterladen möchte. Leider gibt es keine Version für 64 Bit Linux, daher muss man das 32 Bit SDK herunterladen.

Glücklicherweise wird auf der Installationsseite genau beschrieben, welche Software man auf einem Ubuntu-System installieren muss, damit das Android SDK verwendet werden kann. Vor allem muss man die 32 Bit Unterstützung, Sun-Java und Eclipse installieren:

apt-get install ia32-libs

apt-get install sun-java6-bin

Da leider in den Ubuntu-Repositories keine aktuelle Eclipse Version angeboten wird, sollte man Eclipse direkt von der Eclipse-Download Seite herunterladen, denn für die Android Development Tools (ADT) wird mindestens Eclipse 3.4 vorausgesetzt.

Nachdem nun alle Voraussetzungen erfüllt sind, kann das Android Starter Package für Linux heruntergeladen werden und anschließend in einem beliebigen Verzeichnis entpackt werden:

tar xvzf android-sdk_r05-linux_86.tgz

Das Basis Verzeichnis des SDK befindet sich dann unter android-sdk-linux_86

Mit dem Starter Package hat man allerdings noch kein vollständiges SDK. Um die Installation zu vervollständigen muss der Android SDK and AVD Manager aufgerufen werden:

<sdk-verzeichnis>/tools/android

Android SDK Manager mit ausgewählten Paketen für das Android SDK 2.1

Unter den Available Packages finden sich alle Versionen des Android SDK. Für die Zwecke dieses kleinen Einführungsbeispiels dürfte die Version nicht relevant sein, daher kann man ruhig die aktuellste Version, hier die Version 2.1 installieren. Nach einem Klick auf Install Selected lädt der SDK Manager die benötigten Dateien herunter und installiert sie. Vorher muss man noch den Lizenzbestimmungen für die einzelnen Komponenten zustimmen.

Schritt 2: Installation der Android Developer Tools

Für die Entwicklung von Android bietet sich Eclipse an, da es sich bei Android Anwendungen um Java Programme handelt. Um Android Anwendungen mit Eclipse zu entwickeln, müssen die Android Developer Tools (ADT) installiert werden. Hierfür gibt es die Update-Site des Android-Projekts: https://dl-ssl.google.com/android/eclipse/

Dazu öffnet man in Eclipse den Update-Manager unter Help/Install New Software. Dort fügt man dann die oben genannte Update-Site hinzu:

Eintragen der Update-Site des ADT in Eclipse

Anschließend kann man dann die Developer Tools auswählen und installieren:

Installation der Developer Tools

Schritt 3: Ein erstes Programm

Bevor wir ein erstes Programm entwickeln, müssen wir noch die Testumgebung einrichten. Wir benötigen ein virtuelles Gerät (Android Virtual Device (AVD)), auf dem wir die Software laufen lassen können, doch zuvor müssen wir Eclipse noch mitteilen, wo sich das Android SDK befindet.

  1. In den Android Preferences (Window > Preferences > Android) muss das SDK-Basis-Verzeichnis eingetragen werden:

    Einstellung des SDK Pfades

  2. Starten des Android SDK and AVD Managers (in Eclipse unter Window > Android SDK and AVD Manager)
  3. Anlegen eines neuen Virtual Device
  4. Wir geben dem Gerät den Namen TestDevice, und als Target wählen wir Android 2.1 – API Level 7 aus:

    

    Erstellen eines neuen Virtual Device

  5. Nachdem das virtuelle Gerät angelegt ist, können wir ein erstes Projekt erstellen

Erstellen eines Android Projekts

In Eclipse kann nun mit dem Android Projekt Assistenten ein neues Projekt erstellt werden (File > New > Android Project):

Android Projekt Assistent

  1. Als Name wählen wir android.hello (dabei handelt es sich um den Eclipse-Projektnamen)
  2. Als Application name stellen wir Hello Android ein
  3. Der Package Name muss aus mindestens zwei Identifiern bestehen, warum das so gefordert wird, ist mir jedoch unklar. Aber es ist sowieso gute Praxis, einen Pacakge Namen wie hier anzugeben: com.wordpress.argeleb.android.hello
  4. Wir erzeugen eine Activity, da diese in den allermeisten Fällen erstellt wird, auch wenn sie optional ist. Der Assistent generiert eine Klasse, die von der Android Klasse Activity abgeleitet ist.

Der Assistent ist so freundlich und hat bereits eine GUI-Datei angelegt, in der der Text Hello World, HelloActivity zu lesen ist:

Jetzt kann man bereits diese rudimentäre Anwendung ausführen, indem man im Kontextmenü des Projekts den Punkt Run As > Android Application auswählt. Nach eine gewissen Ladezeit des Emulators erscheint dann folgendes Bild:

Android Emulator mit geladener Hello World Anwendung

Das war’s im Prinzip. Viel Spaß beim herum experimentieren!

Weiterführende Literatur findet sich auf den Entwickler-Seiten des Android Projekts.

Erstelle eine kostenlose Website oder Blog – auf WordPress.com.