„Das tritt nach meiner… Kenntnis… ist das sofort. Unverzüglich.“
Nun ja, wie soll ich sagen… Dieses Wochenende gab es ein äußerst wichtiges Ereignis für den Car Stats Viewer: Ein erstes Google Review der App wurde mit positivem Ergebnis abgeschlossen! ![:partying_face: :partying_face:](https://polestar.fans/images/emoji/google/partying_face.png?v=12)
Das kam für mich genauso aus heiterem Himmel wie jetzt vermutlich für euch. Ich habe mir da eigentlich wenige Hoffnungen gemacht und habe in erster Linie am Play Store Eintrag gebastelt. Da war das dann ein wenig ein „Nebenprodukt“ ![:sweat_smile: :sweat_smile:](https://polestar.fans/images/emoji/google/sweat_smile.png?v=12)
So sieht das ganze dann z.B. im Auto aus:
Vorausgesetzt, man ist Teilnehmer des Tests, lässt sich die App direkt im Play Store finden und gilt nicht mehr als „unreviewed“, hat ein richtiges Icon, etc.
Was das nun für Car Stats Viewer bedeutet:
Die App befindet sich vorerst in einem „geschlossenen Test“. Im Gegensatz zu einem „internen Test“ gibt es keine Begrenzung der Teilnehmerzahl mehr, und die App kann auch direkt über den Play Store installiert werden. Der Zugang ist allerdings noch eingeschränkt und erfordert eine Registrierung. Öffentlich zu finden ist die App daher noch nicht. Praktisch ist, dass das nun auch über Google Groups geht. Das erleichtert das Managen des Tracks erheblich.
Über diesen Link könnt ihr eine Teilnahme an der Alpha beantragen: CSV Alpha Testing
Bitte beachtet, dass ihr für die Beitragsanfrage auf der Google Groups Seite mit dem selben Google Account angemeldet sein müsst, wie im Play Store im Auto! In der Gruppe werde ich gegebenenfalls benachrichtigen, wenn Updates anstehen. Schreibrechte für Mitglieder gibt es vorerst keine. Anweisungen zur Testteilnahme und Installation sind auf der Startseite der Gruppe zu finden.
In erster Linie geht es dabei erst mal darum, auf einer etwas breiteren Basis Feedback und ggf. Fehlerberichte für die Umsetzung im Template Host zu erhalten. Die Teilnahme ist zudem aktuell auf Deutschland beschränkt. Natürlich möchte ich möglichst vielen Personen den Zugang zum CSV ermöglichen, aber die App soll dann auch möglichst ausgereift sein. Darum bitte ich um reichlich Feedback. Ggf. behalte ich es mir auch vor, ab einer gewissen Zahl von Testern keine neuen mehr anzunehmen.
Ich werde dann in der Nächsten Zeit diese Tests immer weiter Ausweiten. Sowohl in weitere Regionen, als auch bei der „Zugangskontrolle“. Nächster Schritt nach dem ersten Feedback ist ein offener Test, an dem jeder ohne Registrierung teilnehmen kann. Dann wird die App auch im Play Store öffentlich zu finden sein.
Der Letzte Schritt ist dann der Sprung in die „Production“, idealerweise mit der Version 1.0, die nun allmählich in greifbare nähe kommt. Vorher steht aber noch etwas Feinschliff an.
Der bisherige, interne Test-Track wird in seiner aktuellen Form erhalten bleiben und auch weiterhin Updates erhalten. Diese Version werde ich dann zukünftig „Car Stats Viewer (Legacy)“ nennen. Wer in einem der „Legacy“-Tracks ist, wird vermutlich dort bleiben wollen. Die Version im Play Store hat zwar technisch den selben Funktionsumfang, aber kann u.A. das bekannte Dashboard nicht während der Fahrt anzeigen.
Ich hoffe, dass ich einen für die meisten akzeptablen Kompromiss beim Layout gefunden habe, und CSV somit eine deutlich größere Nutzerbasis erreichen kann, ohne auf die umständlichen internen Tests angewiesen zu sein.
Was bis 1.0 noch zu tun ist
Die Kernfunktionen sind soweit fertig, es gibt aber noch ein paar Ergänzungen, die ich bis dahin umsetzen möchte. Das sind vor allem die Punkte, die in den GitHub Issues als „to do list“ markiert sind, sowie eine Möglichkeit im Zweifelsfall die Datenbanken zwischen den Versionen zu transferieren, falls man doch wechseln will/muss. Das wird aber noch etwas Zeit erfordern. Solange gilt: Solltet ihr beide Versionen verwenden/testen wollen, lasst auch beide parallel laufen, damit hinterher keine Daten verloren gehen. Ob ich es schaffe, zwei Datenbanken ordentlich zu vereinigen, oder ob die eine die andere ersetzen wird, kann ich noch nicht sagen. Das parallele verwenden beider Versionen sollte aber kein Problem darstellen. Ich selber habe aktuell 3 verschiedene Versionen parallel auf meinem Auto laufen ![:sweat_smile: :sweat_smile:](https://polestar.fans/images/emoji/google/sweat_smile.png?v=12)
Ich wäre euch dankbar, wenn wir uns in diesem Thema auf die Besonderheiten der Play Store Version beschränken könnten. Was Allgemeine und besonders den Legacy-Teil betreffende Themen angeht, ist der Versionsthread von 0.26 denke ich noch der bessere Ort, bis 0.27 in den master
-Branch kommt und die Legacy- und Play Store-Versionen zusammengeführt sind.
Nachfolgend dann noch ein paar Details zum aktuellen Stand der neuen Play Store Version.
Update 0.27.0.0033 (Pre-Release)
Aktuell nur in der CSV Play Store Alpha verfügbar.
Unter der Haube
Neben den Experimenten mit den Templates habe ich auch angefangen, die Architektur der UI auf ein moderneres Grundgerüst zu heben. Das wird ein etwas langwieriger Prozess, den ihr im besten Fall gar nicht bemerkt. Perspektivisch wird dadurch aber die Flexibilität drastisch erhöht und UIs können besser für verschiedene Systeme und Designs angepasst werden, was ja hinsichtlich einer Veröffentlichung für alle zukünftig ein wichtigerer Punkt werden könnte als heute. Aber auch abgesehen vom optischen bringt das neue Grundgerüst einige technische Vorteile, die langfristig die Qualität der App verbessern sollten
Der Trip-Tab
Ich habe viel mit verschiedenen Templates herumexperimentiert, und aktuell scheint das „Card“-Template den besten Kompromiss zu bieten:
Im Grunde besteht das Template aus einer Liste, einem Bild und bis zu zwei Buttons. Eingebettet ist das ganze dann in der Tab-Ansicht, wie schon auf den letzten Bildern. Standardmäßig kann man mit einem Button auswählen, welchen Trip-Typen man sehen möchte. Ist der manuelle Trip ausgewählt, kann man ihn über den zweiten zurücksetzen. Eine Einschränkung des Template ist, dass während der Fahrt nur 4 Zeilen angezeigt werden können. Beim aktuellen Stand würde also die verbrauchte Energie während der Fahrt ausgeblendet. Hier plane ich, die Anordnung konfigurierbar zu machen, damit jeder die Daten sehen kann, die einem am wichtigsten sind.
Leistung, Momentanverbrauch und Höhe ü.N.N sind strenggenommen ein Bild. Das wird im Intervall von ca. 1 Sekunde neu gerendert und ersetzt. Das ist also eine Art Workarround, um Echtzeitdaten in der Ansicht darzustellen. Nebenwirkung ist leider, dass die UI etwas träge reagiert. Das Update des Bildes kommt einem UI-Event gleich und das Template hat dafür einen Timeout. Wenn ein Tastendruck in diesen Timeout fällt, muss dieser also erst ablaufen, bevor etwas passiert. Soweit ich weiß lässt sich an diesem Timeout auch nichts rütteln.
Die Anzeige ist natürlich noch nicht final, und es gibt beim Balken noch ein paar Anzeige-Bugs, aber es zeigt schon mal gut, wie man das umsetzen kann. Gebt gerne Feedback zu der Darstellungsweise. Mehr als das Quadrat in der Größe, wie es aktuell ist, steht dafür allerdings nicht zur Verfügung.
Der API-Tab
Für die Anzeige des Verbindungsstatus der verschiedenen APIs habe ich einen eigenen Tab erstellt, der auch direkt auf die entsprechenden Einstellungen verlinkt. Sind die APIs aktiviert, wird das Icon in der entsprechenden Farbe des Status (Blau, Gelb, Rot) dargestellt.
Der Dashboard-Tab
…zeigt noch ein mal Echtzeitdaten in einer anderen Ansicht an:
Die Größe der Grafiken kann leider nicht angepasst werden. Aktuell sind nur diese beiden Werte dort vorhanden, Theoretisch wären aber natürlich auch andere Werte genauso denkbar. Allerdings finde ich diese Ansicht selber nicht sonderlich ansprechend, und möglicherweise streiche ich die wieder komplett. In der Dev-Version auf dem Emulator ist dort statt dessen eine „Karte“ integriert, die allerdings die Echtzeitdaten und das Diagramm rendert:
Das wäre natürlich der „ultimative Kompromiss“ bei der Verwendung von Templates. Allerdings verlangen die Google App Quality Guidelines, dass in Karten-Templates ausschließlich Karten dargestellt werden. Zudem dürfen IoT-Apps dieses Template ohnehin nicht nutzen. Das ganze ist also eher eine technische Spielerei, was möglich wäre …