2014-06-16

Zeitmaschine

Ein Leser hatte mich gefragt, warum denn ein simples Programm wie Min Time unbedingt Android 4 braucht. Die Frage ist natürlich legitim. Da ich sie aus dem Stegreif nicht beantworten konnte, habe ich versucht, die App unter Android 2.x lauffähig zu bekommen. Das Setzen des Attributs android:minSdkVersion auf 8 (Froyo) war schnell erledigt. Die Android Development Tools haben dann noch (logischerweise) das Setzen des Vollbildmodus android:theme="@android:style/Theme.Holo.NoActionBar.Fullscreen" moniert. Dann konnte es losgehen. Mit …Sie ahnen es… rrrrummmmmssss. Es gab ein paar Stellen, an denen Android auf die Nase gefallen ist, weil ich Methoden aufrufe, die es in Android 2.x noch nicht gibt. Das passiert, weil ich das Ziel-SDK (android:targetSdkVersion) auf 19 (KitKat) gelassen hatte. Statt Versuch und Irrtum hätte es natürlich auch das Herabsetzen dieses Wertes getan. Naja. Große Hämmer sind eigentlich gar nicht dabei gewesen: das Abfragen, ob das Gerät einen Vibrationsmotor hat, geht erst ab API Level 11. Das Konfigurieren eines Menüeintrags setShowAsAction() ebenfalls. Und da ist dann noch das Ermitteln der Anzeigegröße. Das von mir verwendete getSize() gibt es erst ab API Level 13, vorher muss man getHeight() und getWidth() verwenden. Das war’s.

Wann es die Version in Google Play gibt, kann ich noch nicht versprechen. Ich bin auch, das gebe ich offen zu, zwiegespalten, was den Support alter Versionen angeht. Auf der einen Seite gibt es viele Leute, die gerne mit Ihrem “alten” Gerät arbeiten. Das ist lobenswert. Warum sollte man etwas wegwerfen, das prima funktioniert. Und in meinem ganz konkreten Fall ist der Aufwand ja minimal. Auf der anderen Seite sind Tests eine Tortur. Je komplizierter die App, desto aufwendiger die Überprüfung. Und: so viele Geräte kann man eigentlich gar nicht vorhalten…

An dieser Stelle nochmals herzlichen Dank an @timothep.

2 comments:

  1. Danke dir für deine Analyse :) Noch funktioniert mein Gerät, "früher" waren die halt noch stabil gebaut. Und teuer ... Aber selbst die Mods wie CM unterstützen die Hardware nur bis zu den entsprechenden 2.x-er-Versionen.

    ReplyDelete
  2. Wir reden hier ganz klar über eines der größten Probleme, die Android hat. Hätte Google nicht Hinz und Kunz erlaubt, Geräte zu bauen, wäre die flächendeckende Verbreitung sicher viel langsamer vonstatten gegangen. Auf der anderen Seite: Hätte Mountain View damals gewusst, was sie heute wissen, hätten sie aber diese Büchse der Pandora sicher nicht aufgemacht. Ich behaupte, man hatte nie vor, so viel Kontrolle abzugeben. Dass man sich selbst mit eigener Hardware schwer tut, zeigt das Trauerspiel um das Galaxy Nexus. Das "Überstülpen" von Erweiterungen durch die Hersteller ist ja nur eine Facette des Update-Debakels. Mein FairPhone zum Beispiel bekommt deshalb wahrscheinlich kein 4.4, weil es keine Kerneltreiber für KitKat gibt. Naja, jedenfalls ist Min Time nun verfügbar und macht hoffentlich auch unter Froyo oder Gingerbread Spaß.

    ReplyDelete