• Willkommen im Geoclub - dem größten deutschsprachigen Geocaching-Forum. Registriere dich kostenlos, um alle Inhalte zu sehen und neue Beiträge zu erstellen.

Android Umbau- Warum

Longri

Geoguru
Hallo alle zusammen.

Ich wollte euch heute mal kurz unsere Intensionen im Bezug des Umbaus an ACB schildern, damit ihr vielleicht verstehen könnt, warum es immer noch kein neues Release gibt und auch kaum neue Funktionen in ACB enthalten sind.

Unser Eigentliches Ziel war es die Map auf OpenGL umzubauen, weil wir uns davon ein wenig mehr Performance erhofft haben.
Die erste Version der GL_Map hat auch hervorragend funktioniert, aber die Performance war nur OK.
Also haben wir gesucht und es gefunden. Wir benutzten eine Bibliothek zur Darstellung in OpenGL, welche aber in ihren Grundeinstellungen so viel Bilder/sec rendert, wie das Gerät schafft.

Danach hatten wir versucht das ganze Rendering selber unter Kontrolle zu bringen, was uns auch irgendwann gelungen ist.
Der Hammer dabei war, dass ohne größere Optimierungen an der Map die CPU-Last dermaßen gesunken ist, dass wir beschlossen haben diesen Weg zu Gunsten des Akkuverbrauchs weiter verfolgen zu wollen.

Irgendwann habe ich mir die LibGdx genauer angesehen und dachte mir wenn die schon so viel kann, dann kann ich mir ein kleines Hilfsprojekt erstellen, mit dem ich einzelne Controls, wie Button oder Labels, testen zu können, ohne ein Android Gerät benutzen zu müssen.

Denn die LibGdx ist für Multi-Plattform-Programmierung entwickelt worden.

libgdx.png


Mittlerweile sind wir dazu übergegangen CB komplett in dieser LibGdx zu Programmieren.

Damit wir aber nicht einfach von vorne anfangen wollten, haben wir uns eine Möglichkeit ausgedacht, beide Welten mit einander zu verbinden.

Wir haben einfach die LibGdx unter die Vorhandene Android GUI gelegt und werden jetzt stück für stück die Android Ansichten auf Durchsichtigkeit stellen, immer dann wenn eine schon fertige LibGdx Ansicht fertig ist und zur Anzeige gebracht werden kann.
In der Zukunft wird CB dann hoffentlich mit demselben Code auf mehreren Plattformen laufen können.
Auch wenn das jetzt erst mal eine Menge Aufwand bedeutet, denke ich das es sich lohnen wird und das nicht nur aus Sicht der Plattform Unabhängigkeit sondern auch im Akku verbrauch.

Ein vor kurzem Durchgeführter Test hat einen fünf stündigen Dauer Betrieb zu gelassen, was ich mit keiner vorherigen Version geschafft hatte.
Und mit Dauer Betrieb meine ich Display On, welches ich sonst immer zum Strom sparen abschalte.

Als kleines Bsp. Die alte Map hatte im Stillstand also ohne Bewegung und alle Kacheln geladen eine CPU-Last von 60-65 % und die neue liegt hier um die 17%.

Ich hoffe, dass ihr noch ein wenig Geduld habt, da der 8.4. als Release Termin der Version 0.5.xx nicht zu schaffen ist.


Gruß Andre
 

peter51d

Geocacher
Mal eine kurze Frage zur Multiplatformfähigkeit.
Bedeutet das, das Cachebox dann auf allen Geräten, unabhängig vom OS laufen würde?
Das wäre ja der Hammer.
Damit hätte Cachebox ein absolutes alleinstellungs Merkmal.
 
Oben