4 Punkte von GN⁺ 3 시간 전 | 2 Kommentare | Auf WhatsApp teilen
  • Die Kartenfunktion von Pedometer++ für watchOS wurde über 6 Jahre lang mit dem Ziel verfeinert, das bestmögliche Kartenerlebnis auf der Apple Watch zu bieten, und erreicht mit der Veröffentlichung von Pedometer++ 8 einen wichtigen Meilenstein
  • Ein früher Ansatz erzeugte Karten auf dem Server und zeigte sie auf der Apple Watch an, doch weil Trainingsdaten bei jeder Aktualisierung hin- und herübertragen werden mussten, war das für Navigation und den Alltagsgebrauch unpraktisch und konnte auch offline nicht funktionieren
  • Um auf watchOS die nötige Kontrolle zu erhalten, wurde eine native Karten-Rendering-Engine in SwiftUI direkt selbst entwickelt; 2021 war sie in der Lage, kachelbasierte Karten stabil zu rendern und Positionsinformationen als Overlay darzustellen
  • Um zu watchOS 26 und Liquid Glass zu passen, wurde gemeinsam mit Andy Allen eine neue Basiskarte entwickelt, die die visuelle Komplexität reduziert sowie Kontrast und Sättigung erhöht, damit sie auch unter glasartigen Elementen gut lesbar bleibt
  • In Zusammenarbeit mit Rafa Conde entstand ein neues Layout, bei dem Messwerte oben links als Layer liegen und die Karte die oberste Seite eines vertikalen Stacks bildet; nach Feldtests über Hunderte von Meilen floss es in das finale Design von Pedometer++ 8 ein

Die watchOS-Kartenreise von Pedometer++

  • Eine zentrale Gewohnheit, um sich in den Bergen oder draußen nicht zu verlaufen, ist es, unterwegs den aktuellen Standort sehr häufig zu überprüfen; eine Karte am Handgelenk eignet sich dafür am besten
  • Schon seit den frühen Tagen der Apple Watch bestand der Wunsch nach einer guten Karte am Handgelenk, realistisch wurde das jedoch erst mit watchOS 6, als SwiftUI eingeführt wurde und „echte“ Apps möglich wurden
  • Die frühen Apple-Watch-Modelle hatten kleine Displays und langsame Prozessoren, sodass das gewünschte Niveau schwer zu erreichen war; der erste Kartenversuch von Pedometer++ setzte daher auf serverseitig erzeugte Karten
  • Bei diesem serverseitigen Ansatz mussten die zugehörigen Trainingsdaten bei jeder Bildaktualisierung hin- und herübertragen werden; das war nützlich, um die Idee zu validieren, aber für Navigation oder die tägliche Nutzung unpraktisch und funktionierte auch offline nicht

Eigene Karten-Engine auf SwiftUI-Basis

  • Um auf watchOS voranzukommen, war Kontrolle auf niedrigerer Ebene nötig, daher wurde eine vollständig native Karten-Rendering-Engine in SwiftUI selbst aufgebaut
  • SwiftUI war damals die von watchOS unterstützte Option und half außerdem dabei, Karten in Widgets einzubinden, die nur SwiftUI unterstützten
  • 2021 war ein Stand erreicht, auf dem sich Karten unter watchOS stabil und mit guter Performance rendern ließen
  • Diese Engine kann kachelbasierte Karten rendern und darüber Positionsinformationen als Overlay legen

Einschränkungen beim Design von watchOS-Bildschirmen

  • Das Design von watchOS-Apps war eine spannende, aber auch frustrierende Aufgabe, weil es durch kleine Displays und Einhandbedienung eingeschränkt war
  • Das Ziel war, den Nutzern zu ermöglichen, die Karte zu lesen und zur Navigation zu verwenden, während gleichzeitig Trainingsinformationen zugänglich bleiben
  • Nach mehreren Designversuchen wurde eine Zeit lang ein modaler Ansatz verwendet, bei dem man über eine Schaltfläche oben links zwischen Kartenansicht und Kennzahlenansicht wechselte
  • Dieser Ansatz erlaubte es, in einer Ansicht die Karte frei zu verschieben sowie hinein- und herauszuzoomen, während die andere Ansicht Messwerte und Steuerungen über die typische Seitenoberfläche von watchOS mit Tabs bereitstellte
  • Dennoch fühlte sich dieses Design wie ein Kompromiss an, und es war schwierig, eine interaktive Karte in eine UI-Struktur einzubetten, die Wischgesten erforderte
  • Mit größeren Apple-Watch-Displays schien es weniger nötig zu sein, einen separaten Bereich strikt abzugrenzen, um die Karte nützlich zu machen
  • Später wurde auch erwogen, die Messwerte am unteren Bildschirmrand zu platzieren, doch bei langen Ausflügen oder Trainings ohne Navigationsfokus ergaben sich dabei andere Einschränkungen
  • Die verschiedenen Designentwürfe hatten gemeinsam, dass die App jeweils nur einen festen Satz an Feldern gleichzeitig anzeigen konnte
  • Man hätte die Oberfläche zwar vom Nutzer konfigurierbar machen können, doch beim watchOS-Design sollten Interaktionen vermieden werden, die länger als ein paar Sekunden dauern, und Benutzereinstellungen sind ihrem Wesen nach umständlich, sodass das dafür ungeeignet war

Eine neue Karte passend zu Liquid Glass

  • Während die App-Struktur weiter Kopfzerbrechen bereitete, kündigte Apple watchOS 26 und Liquid Glass an
  • Ein zentrales Gestaltungselement von Liquid Glass ist das Layering, also das Übereinanderlegen von Elementen; ebenso wichtig waren zueinander passende Farbtypen
  • Zuvor nutzte die App Thunderforest Outdoors als Basiskarte; die enthaltenen Inhalte waren gut, passten aber nicht gut zu Liquid Glass, wenn glasartige Elemente darübergelegt wurden
  • Gemeinsam mit dem Kartenentwickler Andy Allen wurde eine vollständig neue Basiskarte entwickelt, die unter Liquid Glass gut lesbar ist
  • In der neuen Karte wurde die visuelle Komplexität reduziert, der Kontrast der Elemente erhöht und die Sättigung der Kartenelemente angehoben, damit unter Glas nichts stumpf oder verwaschen wirkt
  • Durch diese Arbeit konnte auch eine Dark-Mode-Variante der Kartentiles erstellt werden
  • Dark Mode ist auch unter iOS nützlich, war aber auf watchOS besonders wirkungsvoll; abgestimmt wurde auf eine Karte, die selbst auf Armlänge sehr gut lesbar ist
  • Das Ergebnis war eine für watchOS geeignete Karte, doch ein App-Design auf demselben Niveau fehlte noch

Rafa Conde und das neue Layout

  • Um aus der gestalterischen Sackgasse herauszukommen, wurde mit dem Designer Rafa Conde zusammengearbeitet
  • Unter mehreren alternativen Layouts wurde schließlich ein Entwurf gewählt, bei dem die Messwerte oben links als Layer liegen und die Karte die oberste Seite eines vertikalen Stacks bildet
  • Dieses Design löst das Problem der interaktiven Karte, indem zuerst auf die Karte getippt werden muss, um in den Erkundungsmodus zu wechseln
  • Nachdem das Gesamtkonzept feststand, folgte die Arbeit daran, die eigentliche App umzusetzen und die Details zu verfeinern
  • Rafas Konzept wurde als schnell laufender Prototyp umgesetzt und beim Gehen über Hunderte von Meilen im realen Einsatz validiert
  • Danach wurden Schriftarten und subtilere Designentscheidungen weiter verfeinert, bis das finale Design erreicht war, das in Pedometer++ 8 enthalten ist
  • Die endgültige Oberfläche ist gut lesbar und nützlich, passt sich der watchOS-Plattform auf natürliche Weise an und wirkt zugleich neu und eigenständig

Warum nicht MapKit?

  • An den eigenen Karten für watchOS wurde schon gearbeitet, bevor Apple MapKit für watchOS bereitstellte; der Grund für die Eigenentwicklung statt MapKit war, dass es an der für Pedometer++ nötigen Konfigurierbarkeit und Nützlichkeit fehlte
  • MapKit ist für grundlegende Anwendungsfälle gut, bot aber nicht das Maß an Kontrolle, das Pedometer++ liefern wollte
  • MapKit auf watchOS wird immer im Dark Mode angezeigt; das mag als Standard sinnvoll sein, schafft aber Einschränkungen bei Barrierefreiheit und Nutzerwahl, weshalb die Wahl beim Nutzer liegen sollte
  • MapKit auf watchOS kann mit der Zeit zwar mehr, blieb aber bei Animationen und Overlays weiterhin eingeschränkt
  • Die Abdeckung von Geländekonturen und Trail-Darstellungen in MapKit verbessert sich, dennoch gibt es viele Orte, an denen deutlich mehr Details nötig sind, obwohl die MapKit-Karte dort fast leer wirkt
  • Als Beispiel wird der Unterschied zwischen der eigenen Karte und MapKit am Einstieg zu einer Lieblingswanderroute in Schottland verglichen

2 Kommentare

 
xguru 1 시간 전

Ich gehe zwar nicht wandern, aber der Aufwand, den sie in die App gesteckt haben, ist enorm.
Dass sie sogar Kartografen eingestellt haben ...

 
GN⁺ 3 시간 전
Hacker-News-Kommentare
  • Dass es für die Apple Watch keine von Apple selbst erstellten Wander- oder topografischen Karten gibt, wirkt wie ein großer Fehlschlag. Nicht einmal auf der teuersten „Explorer“-Watch Ultra, und Funktionen wie GPX-Import sind praktisch Wunschdenken
    Letztlich ist sie zwar ein Lifestyle-Gerät, aber trotzdem schade

    • Hat es nicht auch mehr als 10 Jahre gedauert, bis es eine Rechner-App für das iPad gab?
    • Ehrlich gesagt finde ich, dass weniger von Apple entwickelte Apps für das Ökosystem und die allgemeine App-Qualität insgesamt besser sind. Die Apps, die Apple in letzter Zeit „gesherlockt“ hat, sind qualitativ nicht besonders gut, und sobald sie als Standard-Apps mitgeliefert werden, wird es für Drittanbieter viel schwerer, zu konkurrieren
  • Die Evolution ist großartig, und es ist schön zu sehen, was man schaffen kann, wenn man sich von Design-Konventionen wie zentrierten und symmetrischen UIs löst. Das reicht fast, um eine Apple Watch haben zu wollen
    Auf dem Screenshot im Artikel ist Hidden Valley in Glen Coe zu sehen, eine meiner liebsten kurzen Wanderstrecken in Schottland
    Allerdings sind meine Erinnerungen an das Haus unten im Tal weniger angenehm. Früher bin ich dort vorbeigefahren und habe dieses immer verschlossene Haus, abgeschieden zwischen den Bergen, fast träumerisch betrachtet und mich gefragt, wie besonders es wohl wäre, an so einem Ort zu leben. Der Parkplatz für den Wanderweg lag nur ein paar hundert Meter weiter oben an der Straße
    Ein paar Jahre später habe ich das Haus in einer Louis-Theroux-Doku wiedererkannt, in der er es zusammen mit seinem Besitzer, der TV-Persönlichkeit Jimmy Saville, besucht. Nachdem ich später nach Australien zurückgekehrt war, kam heraus, dass Saville postum als einer der berüchtigtsten Täter von Kindesmissbrauch und Sexualverbrechen in Großbritannien entlarvt wurde, was wirklich furchtbar war. Oben auf der Karte im Screenshot sieht man tatsächlich den Namen und die Umrisse dieser Hütte

  • Ich habe aus Neugier nachgesehen, und es scheint, als habe man Kartografen engagiert, um große, gut aussehende, maßgeschneiderte Kartenbilder zu erstellen und so Details einzubauen, die in Apple Maps fehlen, etwa Wanderwege
    Deshalb werden im Grunde Bildkacheln angezeigt, anders als bei Apple Maps, das dynamisch rendert. So lassen sich schönere und detailliertere Karten erzeugen, aber das hat Auswirkungen auf Dinge wie separate Downloads pro Zoomstufe, Rotation und mögliche Aktualisierungen

    • Ein eigenes Design von Kartografen erstellen zu lassen und die Technik zum Rendern und Ausliefern dieses Designs sind zwei völlig verschiedene Probleme
      Der ursprüngliche Kartenanbieter stellt sowohl Vektor- als auch Raster-Tile-Services bereit: https://www.thunderforest.com/maps/outdoors/
      Üblich ist, direkt einen Vektor-Tile-Service und eine Stildefinition zu verwenden oder bei Bedarf Raster-Tiles zu erzeugen
    • Ich denke, es könnte sein, dass Apple diese Art von dynamischem Rendering auf der Apple Watch für Drittentwickler gar nicht ermöglicht, weil Apple die Metal-Grafik-API dort nicht freigibt
  • Als Nutzer von Pedometer++ bin ich erstaunt über Davids Liebe zum Detail, die er über Jahre hinweg beibehalten hat. Die Entwicklung der App ist wirklich beeindruckend

    • Er ist wirklich ein hingebungsvoller Entwickler. Auch hier ist „also … ich habe maßgeschneiderte Karten in Auftrag gegeben“, also einen Kartografen engagiert, ein perfektes Beispiel
      Weil er zuvor so viel Arbeit in Watchsmith gesteckt hat, ist er praktisch zu einem weltweit führenden Experten für Widgets geworden, und deshalb war es auch großartig zu sehen, wie er mit Widgetsmith so erfolgreich wurde. Wenn es jemand verdient hat, dann er
  • Auf einer Uhr sind statische Tiles die richtige Wahl. Ich habe dynamisches Rendering schon auf stark eingeschränkten Geräten ausprobiert, und Verschieben sowie Zoomen wurden in jedem Frame von Garbage-Collection-Pausen aufgefressen

    • watchOS hat keine Garbage Collection, sondern verwendet ARC
  • Apple Maps auf watchOS ist ziemlich gut, aber wenn ich normalerweise aufs Fahrrad steige, eine Route starte und nach etwa drei Minuten die Anzeige „Trainierst du gerade?“ darübergelegt wird, kann ich die Karte nicht mehr sehen, bis ich anhalte und sie wegdrücke
    Ich finde, diese Anzeige sollte nicht den ganzen Bildschirm einnehmen, sondern zu einer Benachrichtigung werden, oder nach einiger Zeit einfach still im Hintergrund mit dem Aufzeichnen beginnen
    Es überrascht mich, denn wenn es Leute bei Apple gibt, die daran arbeiten, müssten sie dieses Problem doch selbst erleben
    Wenn die Karte dieser App den Bildschirm übernehmen und behalten könnte, wäre das für mich ein Killer-Feature. Beim Überfliegen der App-Store-Seite war mir allerdings nicht klar, welche Funktionen hinter einem Abo stecken und welche nicht, und ich mag keine Apps, die das erst verraten, wenn man die Einrichtung abgeschlossen hat, also werde ich wohl einfach versuchen, daran zu denken, das Training manuell zu starten

    • Die Funktion „Trainierst du gerade?“ kann man deaktivieren. In den Trainings-Einstellungen einfach Check In Reminders ausschalten