Änderungsübersicht

Wenn Sie neugierig sind, was es bei High Mobility Neues gibt - und was sich geändert hat -, dann sind Sie hier genau richtig.

High Mobility Releases und Änderungen

Erfahren Sie, was es Neues bei High Mobility gibt und was wir nach und nach einführen.

Pseudonymisierung der Flotte

Für Flottenkunden ist es nun möglich, pseudonymisierte Fahrzeugdaten zu erhalten. Das bedeutet in der Praxis, dass die VIN (Vehicle Identification Number) durch ein Pseudonym ersetzt wird, das nicht direkt mit einer VIN verknüpft werden kann.

Dies hat den Vorteil, dass es Anwendungsfälle gibt, in denen Sie statistische Daten von Fahrzeugen in Ihrer Flotte benötigen, die Daten aber nicht mit einzelnen Fahrzeugen in Verbindung bringen wollen.

Die Pseudonymisierungsschicht bietet einen Mehrwert für Kunden mit bestehenden Flotten. Der Klarheit halber sei gesagt, dass es nicht möglich ist, auf anonymisierte Daten von nicht verwandten Fahrzeugen zuzugreifen.

Besuchen Sie das Pseudonymisierungs-Tutorial, um loszulegen.

Änderungen im Lebenszyklus von MQTT Access Token

Bisher mussten Flottenkunden zunächst ein Access Token erstellen, bevor sie Daten über unseren MQTT-Broker empfangen konnten. Mit diesem Update ist dies nicht mehr notwendig. Sobald ein Fahrzeug aktiviert wurde, werden seine Daten in den MQTT-Feed eingestellt.

Darüber hinaus ist es möglich, Fahrzeuge direkt über die Service Account API zu widerrufen, indem man die Fahrgestellnummer angibt. Dies bedeutet, dass die OAuth2-API nicht mehr implementiert werden muss, es sei denn, eine unserer Pull-basierten APIs wird parallel dazu verwendet. Schauen Sie sich den DELETE /Flotten/Fahrzeuge/{vin} Endpunkt für weitere Details.

Wir hoffen, dass diese Änderungen flexiblere Integrationsmethoden unterstützen werden. Viel Spaß beim Streaming!

Mercedes-Benz Streaming-Daten

Es ist jetzt möglich, Streaming-Daten über MQTT für Mercedes-Benz Flottenfahrzeuge zu konsumieren. Mit dieser Ergänzung unterstützen wir nun Streaming-Daten für insgesamt 11 Marken: BMW, Mercedes-Benz, Ford, Peugeot, Citroën, DS Automobiles, Opel, Vauxhall, Fiat, Alfa Romeo und Jeep.

Besuchen Sie das MQTT-Tutorial, um mit dem Testen zu beginnen.

Geofencing-API

Wir freuen uns, die Geofencing-Funktionalität für Flottenanwendungen einführen zu können. Es ist nun möglich, Geofences zu erstellen und Fahrzeuge verschiedenen Zonen zuzuordnen, die eine frei gezogene Grenze oder z.B. Ländergrenzen sein können. Jedes Mal, wenn das Fahrzeug eine Zone betritt oder verlässt, benachrichtigen wir Ihren Dienst über Webhook-Lieferungen.

Die Konfiguration von Geofences und Benachrichtigungen erfolgt über die Service Account API, die um Geofencing-Endpunkte erweitert wurde.

Hier ist eine Liste der wichtigsten Highlights:
  • Die geometrischen Grenzen eines Geofence werden durch das offene GeoJSON-Format festgelegt.
  • Es ist möglich, ein Fahrzeug mehreren Zonen zuzuordnen.
  • Die Ereignisse " Betreten" und " Verlassen" werden unterstützt
  • Es ist möglich, die letzten 5 Ereignisse für jedes Fahrzeug abzurufen
Geofencing funktioniert heute für alle Stellantis Fahrzeuge. Die Unterstützung für Mercedes-Benz, BMW, MINI und Ford wird nächsten Monat im April hinzugefügt. Folgen Sie dem Geofencing Tutorial in unseren Dokumenten, um loszulegen.

REST API v5

Wir haben jetzt eine Version 5 der REST-API, die im Laufe der Zeit die Version 4 ersetzen wird. Dieses Versionsupdate konzentriert sich auf die Verbesserung der Effizienz und Geschwindigkeit. Es gibt keine Änderungen an den Endpunkten oder sogar am Antwortformat, was eine schnelle Migration ermöglicht. Nichtsdestotrotz haben wir eine neue Version veröffentlicht, da der JWT, der für die Authentifizierung verwendet wird, nun mit einer leicht aktualisierten Nutzlast erstellt wird.

Hier sind die Änderungen, die vorgenommen wurden:
  • Die Felder api_version und access_token wurden in ver bzw. sub umbenannt
  • Das Feld Version ver sollte auf 3.0 gesetzt werden.
  • Das Feld app_id ist nicht mehr erforderlich
  • Ein neues Feld mit dem Namen iss, das die Seriennummer des Clients enthält, ist erforderlich.
Der Code in Ihrem Projekt sollte bei Verwendung von REST API v5 etwa so aussehen:
Die Codeschnipsel, die Sie unter Ihren Anwendungen in der Konsole finden, wurden aktualisiert, was bedeutet, dass Sie einfach den neuen Schnipsel kopieren können, um die neuen Werte zu erhalten. Die Beispiele im REST-API-Tutorial wurden aktualisiert und verwenden nun v5.
Die Version 4 (v4) der REST-API wird am 30. Juni 2022 auslaufen.

MQTT Auto-API-Broker

Es gibt jetzt eine neue Möglichkeit, Fahrzeugdaten von unserer Plattform über das MQTT-Protokoll abzurufen. Durch die Verwendung von MQTT können Sie Datenaktualisierungen von einem zentralen Broker abonnieren und einen kontinuierlichen Datenstrom von allen Fahrzeugen erhalten, die für Ihre Anwendung oder Ihren Dienst aktiviert sind.

Die Verwendung von MQTT bringt Ihnen folgende Vorteile:
  • Umstellung von Poll-basierter auf Push-basierte API-Nutzung.
  • Abonnieren Sie alle Datenaktualisierungen für Fahrzeuge, auf die Sie Zugriff haben, über eine einzige TCP/TLS-Verbindung.
  • Arbeiten Sie mit einem etablierten Standard, MQTT, mit hervorragenden Tools für alle Plattformen und Betriebssysteme.
  • Arbeiten Sie weiter mit Daten-Payloads, die auf dem Auto API JSON-Schema basieren.
  • Sie ermöglicht fortgeschrittene Anwendungsfälle, die auf sekundengenaue Streaming-Ereignisse und Aktualisierungen von Fahrzeugdaten angewiesen sind.
Schauen Sie sich den Erste Schritte mit MQTT Artikel in unseren Dokumenten, um mehr darüber zu erfahren und es selbst auszuprobieren.

GraphQL API

Heute begrüßen wir ein neues Mitglied in unserer API- und SDK-Familie zum Abrufen von Fahrzeugdaten - eine GraphQL-API. Die GraphQL-API ermöglicht eine flexible Abfrage von Daten, so dass Sie in der Lage sind:
  • Fragen Sie die Datenpunkte ab, an denen Sie interessiert sind, und nicht mehr.
  • Verringern Sie die Anzahl der Anfragen, indem Sie sie in einer einzigen Anfrage zusammenfassen.
  • Verwenden Sie ein starkes Typensystem, das es Ihnen ermöglicht, nur Daten abzufragen, die auch zurückgegeben werden können.
  • Arbeiten Sie mit klaren und hilfreichen Fehlern für falsch eingegebene Abfragen.
  • Introspektion verwenden - ein GraphQL-Client kann das Schema dynamisch abfragen.
  • Stimmen Sie das zurückgegebene JSON einfach mit der Abfrage ab.
Alle Details finden Sie in dem Erste Schritte mit GraphQL Artikel in unseren Dokumenten.

Auto API Level 13

Diese Protokollaktualisierung bringt neue Eigenschaften des unterstützten Datensatzes. Darüber hinaus werden drei neue Funktionalitäten eingeführt:
  • ADAS
  • Ladevorgang
  • Unfall
Level 13 ist vollständig abwärtskompatibel mit Level 12 und bringt keine wesentlichen Änderungen mit sich. Alle neuen SDK-Versionen bieten native Unterstützung für Level 13, während REST API v4 aktualisiert wurde, um die neuen Eigenschaften zu unterstützen. Das vollständige Changelog finden Sie auf GitHub.

Auto-API Swift (iOS) 13.0.0

Neuer AutoAPI Level 13 Binary-to-Swift und Back-Parser.

Diese Version ist größtenteils additiv, mit nur geringen API-Änderungen:
  • Auto-API Enums (beginnend mit AA) werden geändert, um einen RawValue == String zu haben.
  • Um weiterhin auf den Byte-Wert zuzugreifen, sollte man die Eigenschaft .byteValue verwenden (anstelle der früheren Eigenschaft .rawValue, die nun einen String-Wert zurückgibt).
  • Ergänzungen zur Spezifikation (neue Fähigkeiten, Eigenschaften und Typen) finden Sie unter hier.
  • Änderungen an der Spezifikation (Verwerfungen und Änderungen an bestehenden Typen, Eigenschaften und Fähigkeiten) können eingesehen werden hier.
Die Auto-API-Spezifikation kann jederzeit für weitere Einzelheiten eingesehen werden hier.

Java Auto-API 3.13.0

  • Aktualisierung auf Auto API L13 spec
  • Ersetzen Sie PropertyComponentFailure.Reason durch den benutzerdefinierten Typ value.Failure
  • Release ist jetzt in mavenCentral

Node.js SDK v13

Diese Version ist größtenteils additiv, mit kleineren API-Änderungen:
  • Ergänzungen zur Spezifikation (neue Fähigkeiten, Eigenschaften und Typen) finden Sie unter hier.
  • Änderungen an der Spezifikation (Verwerfungen und Änderungen an bestehenden Typen, Eigenschaften und Fähigkeiten) können eingesehen werden hier.
Telematikbefehle akzeptieren keine veralteten Eigenschaften mehr.

Flotten-SDK 0.2

Die erste öffentliche Version des Fleet SDK.

HMKit Crypto Telematics 0.1

Krypto-Implementierung in Java. Verwendet für Fleet SDK und andere Krypto.

Java Auto-API 3.12.1

Umbenennen von Runtime enum in Environment, das die Werte Owner und Vehicle enthält.

Verschieben nach mavenCentral()

Von nun an werden Java-Pakete auf mavenCentral() veröffentlicht. Die Gruppen-ID wird von `com.highmobility` auf `com.high-mobility` geändert. Alle bisherigen Veröffentlichungen behalten ihre Gruppen-ID und sind bis zurSchließung von JCenter am 1. Februar 2022 verfügbar.

Auto-API Level 12

Das Protokoll wurde um neue Datenpunkte und Funktionalitäten erweitert, von denen einige hier hervorgehoben werden:
  • Möglichkeit zur Übermittlung des Einheitstyps eines Wertes, z. B. Kilometerstand in Meilen oder km-s
  • Neue Funktionalitäten für statische Fahrzeuginformationen (Eigenschaften getrennt vom Fahrzeugstatus)
  • Option zum Zugriff auf Verfügbarkeitsinformationen für Datenpunkte, d. h. Aktualisierungsrate
Weitere Details finden Sie hier hier.

Node SDK Version 12.0.0

Auto API Level 12 implementiert:
  • Verfügbarkeitstester hinzugefügt: hmkit.commands.Charging.getAvailability()
  • Hinzugefügte Einheiten
  • Die minimal unterstützte Version von node.js ist jetzt Version 10.0.0
  • Die Funktionalitäten Status-Eigenschaft der historischen Fähigkeit liefert jetzt einen Zeitstempel
  • Getter-Befehle akzeptieren jetzt ein optionales Array von Eigenschaftsnamen (vorher von Eigenschafts-IDs)
  • Ein Fehler wurde behoben, der dazu führte, dass Zeitstempel falsch analysiert wurden.

Auto-API Swift (iOS) 12.0.0

Neuer Auto API Level 12 Binär-zu-Swift und zurück Parser.
  • Diese Bibliothek wird jetzt nur noch als Swift-Paket vertrieben, was auch der wichtigste empfohlene Weg ist, sie zu verwenden/integrieren.
  • Die bemerkenswerteste Änderung gegenüber der vorherigen L11 ist, dass die Auto-API nun in der Lage ist, Einheiteninformationen für verschiedene Werte zu übermitteln: Eigenschaften (und Unterwerte), die eine Messung ausdrücken, geben nun eine Messung anstelle einer Dezimalzahl aus, z. B. engine_power oder odometer.
  • Einige Eigenschaften sind veraltet (mit einem Verweis auf die neue Eigenschaft) und eine ganze Reihe neuer Eigenschaften wurde hinzugefügt (einschließlich neuer Funktionalität).
  • Jede Eigenschaft hat nun eine Verfügbarkeitskomponente, die mit dem entsprechenden Getter in einer Capability abgerufen werden kann.
Weitere Einzelheiten zu neuen Datenpunkten und anderen Änderungen finden Sie in der Quelle.

Die Änderungen des Protokolls von L11 auf L12 sind zu sehen hier.

Auto-API Swift (iOS) 11.0.2

  • Hilft dem Swift-Compiler bei einigen "schwierigen" Berechnungen.

Java Auto-API 3.12.0

Allgemein
  • Hinzufügen von varargs-Eigenschafts-Gettern: public GetProperties(byte... propertyIdentifiers)
  • Umbenennung von Command.getType() in Command.getCommandType()
  • Arrays wurden zu List geändert. z.B. in Capabilites.supportedCapabilities. Charging.SetTimers, Property.components
  • Umbenennung von Command.getType() in Command.getCommandType(), damit es nicht mit Trips.getType() kollidiert
Level 12

Auto API Level 12 Spezifikation verwendet wird.
Alle neuen Fähigkeiten/Eigenschaften wurden hinzugefügt/aktualisiert/veraltet.
  • Viele Float-Werte verwenden jetzt den Typ Einheit. Zum Beispiel, Länge
  • Hinzugefügt Verfügbarkeit Befehle

HMKit 2.0.5

  • Fix für die Konfiguration der Bluetooth MTU-Größe
  • Ändern Sie die Namen der Protokollebenen, sie lauten jetzt Off, Info, Debug, All
  • Nicht angezeigte Kernprotokolle korrigieren

CommandQueue 1.1.0

  • Die Warteschlange wird jetzt mit dem Objekt QueueConfiguration initialisiert.

HMKit Utils 1.4.5

  • Methode hexFromByte() hinzugefügt

HMKit Crypto 1.4.6

  • Kern aktualisieren

HMKit iOS 3.2.2

  • Changed HMLocalDevice .links from [HMLink] to Set<hmlink>.</hmlink>
  • Fehler bei der Aktualisierung von veränderlichen Merkmalswerten behoben.
  • HMLocalDevice -disconnect() setzt den Status auf .idle, auch wenn BT nicht verfügbar ist.

HMKit Android 2.0.3

Diese Version enthält den Quellcode und die Dokumentation zur einfacheren Entwicklung. Außerdem wird die Veröffentlichung nach jcenter() verschoben. Das bedeutet, dass das Hinzufügen der High-Mobility Artifactory Url nicht mehr notwendig ist.

Kommando-Warteschlange Android 1.0

Dies ist ein Hilfspaket, das mit HMKit Android verwendet werden soll, um Bluetooth- und Telematikbefehle in die Warteschlange zu stellen.

HMKit Android 2.0.2

Öffnen Sie die Version des Einstellungsbefehls. Siehe link.sendCommand() und telematics.sendCommand()

HMKit Core JNI 1.0.1

  • Öffnen Sie den Einstellungsbefehl Version.
  • Die Methode setMTU() sollte int statt int[] verwenden.

HMKit Android 2.0.1, Java Auto-API 3.11.1, HMKit Crypto 1.4.5

Diese Versionen fügen Unterstützung für Gradle-Versionen größer als 4.6 hinzu.

REST API v3

  • Auto API Level 11 implementiert. Dies bringt einige Änderungen an Eigenschaften und bestehenden API-Endpunkten sowie neue API-Endpunkte.
  • REST-API-Endpunkte werden jetzt dynamisch auf der Grundlage des Node.js SDK generiert, wodurch die Codebasis wesentlich kleiner wird.
  • Die meisten der automatisierten Tests werden jetzt dynamisch generiert.

Auto API 11.0

  • Implementierung von Auto API Level 11. Alle Befehle, Antworten und Validierungen werden auf der Grundlage der Auto-API-Spezifikation generiert.
  • Automatisierte Befehls- und Antworttests werden dynamisch generiert.
  • Kleinere Änderungen an der Befehlssyntax. Lesen Sie mehr unter Node.js Auto API

Node.js SDK v11

Das Binärformat der Auto-API wurde geändert, um die Eigenschaften über alle Befehle hinweg zu vereinheitlichen und den Bereich der verschiedenen Wertetypen zu vereinfachen. Außerdem wurde die Änderung vorgenommen, um die automatische Generierung plattformspezifischer Bibliotheken aus der Auto-API-Spezifikation zu erleichtern.

Durch die Aktualisierung des Binärformats ist diese Version nicht mit früheren Versionen kompatibel.

Die meisten Funktionen unterstützen die Abfrage nur einer oder mehrerer spezifischer Eigenschaften (zusätzlich zum gesamten Status).
  • Capabilities API stellt aktivierte Eigenschafts-IDs für eine bestimmte Fähigkeit dar (anstelle von Nachrichtentypen wie zuvor).
  • Zonentyp der Windschutzscheibe hat eine andere binäre Darstellung.
  • Die Door Locks wurden in Doors, Lock/Unlock umbenannt, der Befehl Verriegeln/Entriegeln steuert jetzt den Zustand der Schlösser (nicht wie bisher den Zustand der Innenschlösser) und 2 neue Eigenschaften, die die spezifischen Schlösser für das Fahrzeug zusammenfassen.
  • Motor (Engine) umbenannt in Zündung Ignition (Ignition).
  • Neue Funktionalität "Motor" hinzugefügt, die es ermöglicht, den Motor ein- oder auszuschalten.
  • Fahrzeugzeit gibt jetzt Stunden und Minuten zurück (nicht Millisekunden ab UNIX-Epoche).

HMKit iOS 3.2.0

  • Umbenennung des HMKit-Typs in HMLocalDevice, um XCFrameworks verwenden zu können.
  • Alle hmkit-benannten Typen und Methoden werden mit dem Präfix localDevice umbenannt.
  • Erhöhter BT-Durchsatz durch Aushandlung der gemeinsamen größten Packungsgröße.
  • Datencontainer und Protokoll wurden auf die neue Version aktualisiert (ältere Versionen werden weiterhin unterstützt).
  • Aktualisierte Telematik-Aufzeichnungsoptionen.

Auto API iOS 11.0.0

Diese wird nun automatisch aus der Auto-API-Spezifikation generiert und viele Bezeichnungen können sich von den vorherigen Versionen unterscheiden.

Weitere Informationen finden Sie im Änderungsprotokoll der Auto-API.

HMCryptoKit iOS 1.2.14

Die Probleme bei der Generierung gemeinsamer Schlüssel in iOS 13 wurden behoben.

HMUtilities iOS 1.4.6

Korrektur für HMDebugTree.

Emulator v19.7.0

  • Auto API Level 11 implementiert.
  • Funktionalitäten, Eigenschaften, Validierung, Nachrichtenhandler, Eigenschaftskodierung und -dekodierung werden jetzt dynamisch auf der Grundlage der Spezifikation generiert. Dies macht das Hinzufügen neuer Eigenschaften in Zukunft viel einfacher.
  • Neue Ansicht für Anwendungsberechtigungen hinzugefügt.
  • Fehler beim Laden von Assets behoben.
  • Die Initialisierung des Fahrzeugstatus wurde verbessert.
  • Verbesserte Fehlerbehandlung.
  • Kleinere Stilkorrekturen.

Java Auto API 3.11.0

Die Auto-API-Bibliothek wird nun automatisch aus der Spezifikation generiert. Das bedeutet, dass sich einige Klassennamen geändert haben. Aktuelle Klassennamen finden Sie in der Auto-API-Spezifikation.

Die Farbwerte reichen jetzt von 0-255 und nicht mehr von 0-1.

HMKit Android 2.0.0

  • Krypto ist jetzt ivar in HMKit. Statische Methoden wurden in nicht-statische geändert.
  • Die Verbindungsstatus wurden für core2 aktualisiert. Siehe Bluetooth-Tutorial für weitere Informationen.
  • Hinzufügen von onAuthenticationFailed Callback zu LinkListener. Dieser wird aufgerufen, wenn die Authentifizierung fehlschlägt.
  • Nutzung eines benutzerdefinierten MTU in Bluetooth. Diese verbessert die Kommunikationsgeschwindigkeit.
  • HMKit.loggingLevel wurde in die statische Methode HMKit.setLoggingLevel() verschoben.
  • In ConnectedLinkListener, onAuthorizationRequested() umbenannt in onAuthenticationRequest()
  • Entfernen einiger veralteter Methoden.

HMKit OEM 2.0.0

  • Umbenennung von Telematik in HMKit.
  • HMKit hat jetzt eine Instanz. Die Funktionen zum Ver- und Entschlüsseln sind immer noch statisch.
  • Crypto ist jetzt ivar in HMKit. Seine statischen Methoden wurden in nicht-statische geändert.

HMKit Crypto 1.4.4

  • Crypto-Methoden sind jetzt nicht statisch. Dies verdeutlicht, wie Crypto zu verwenden ist: durch Zugriff auf seine Ivar von HMKit.java

HMKit Utils 1.4.4

  • Die Methoden Bytes set() geben das Bytes-Objekt zurück.

Auto API iOS 10.0.9

  • Skript zur Erstellung des XCFrameworks hinzugefügt
  • AutoAPI wurde in AAAutoAPI geändert, um die Verwendung von XCFramework zu unterstützen
  • Die "alten" Skripte zur Erstellung und Ausdünnung der Universal-Lib (Fat Binary) wurden entfernt
  • Aktualisiert für Xcode 11 und Swift 5.1
  • Aktualisiert, um mit SPM zu arbeiten (empfohlen in Xcode 11+)

HMCryptoKit iOS 1.2.12

  • Skript zur Erstellung des XCFrameworks hinzugefügt
  • Fehler bei der Signaturerstellung behoben
  • Der Typalias HMECKey wurde zugunsten von SecKey entfernt.
  • Die "alten" Skripte zur Erstellung und Ausdünnung der Universal-Lib (Fat Binary) wurden entfernt
  • Aktualisiert für Xcode 11 und Swift 5.1
  • Aktualisiert, um mit SPM zu arbeiten (empfohlen in Xcode 11+)

HMKit iOS 3.1.0

  • Skript zur Erstellung des XCFrameworks hinzugefügt
  • HMKit wurde in HMLocalDevice geändert (und die zugehörigen Typen ebenfalls umbenannt), um die Verwendung von XCFramework zu unterstützen
  • Die "alten" Skripte zur Erstellung und Ausdünnung der Universal-Lib (Fat Binary) wurden entfernt
  • Aktualisiert für Xcode 11 und Swift 5.1
  • Aktualisiert, um mit SPM zu arbeiten (empfohlen in Xcode 11+)
Version 2.5.8 wurde außerdem auf Xcode 11, Swift 5.1, SPM und XCFrameworks aktualisiert.

HMUtilities iOS 1.4.5

  • Skript zur Erstellung des XCFrameworks hinzugefügt
  • Die Hex-Ausgabe der Byte-Sammlung wurde in Kleinbuchstaben geändert
  • Die "alten" Skripte zur Erstellung und Ausdünnung der Universal-Lib (Fat Binary) wurden entfernt
  • Aktualisiert für Xcode 11 und Swift 5.1
  • Aktualisiert, um mit SPM zu arbeiten (empfohlen in Xcode 11+)

HMKit Android 1.6.10

  • Fix OAuth für frühere Versionen als Nougat.
  • Verbesserung der OAuth-Fehlermeldungen.
  • Erhöhung des Timeouts für Webanfragen.

Emulator v19.5.1

  • New telematics permission system.
  • Unterstützung historischer Daten.
  • Fehler bei der Kodierung von Zeitstempeln für Properties behoben.

Node.js SDK v10.2.0

  • Unterstützung von Befehlen für historische Daten.
  • Automatisierte Tests wurden hinzugefügt und verbessert.

HMKit Android 1.6.9

  • Verwenden Sie Holz für die Protokollierung. Um die Protokolle zu sehen, sollte man Timber.plant(new Timber.DebugTree()); beim Start der Anwendung aufrufen.
  • Hinzufügen eines Fortschrittsbalkens zum OAuth2-Ladezustand.

Java Auto-API Version 2.10.2

  • Eigenschaftskomponenten werden auch im Rohformat gespeichert.
  • Haubenfunktion hinzufügen.
  • Fehlerbehebungen.

iOS Auto-API Version 10.0.5

  • Weitere Verbesserung der Parsing-Geschwindigkeit um 20-50%.

iOS HMCryptoKit Version 1.2.8

  • Der Fehler, dass der Index der Signatur außerhalb der Grenzen liegt, wurde behoben.

iOS HMKit Version 3.1.0

  • Unterstützung für SCC und BEC v2 hinzugefügt (keine Auswirkung auf aktuelle Benutzer).
  • Überarbeitung von HMTelematics (einige Änderungen an der Schnittstelle, vor allem in Bezug auf Ergebnis).
  • Updated all types similar to Swift 5's Result<success, failure=""> to use the native one</success,>
  • Der OAuth-Code wurde aktualisiert, um unterschiedliche Typen zu verwenden (d.h. HMOAuthSuccess ist jetzt eine Struktur).
  • Weitere kleinere Korrekturen und Verbesserungen.

iOS HMUtilities Version 1.4.1

  • Wiedereinführung von .bytes und .data in UInt8-Collection.

iOS HMCryptoKit Version 1.2.7

  • Die Ausgabe der .bytes des privaten Schlüssels wurde korrigiert.

iOS Auto API Version 10.0.4

  • Die Parsing-Geschwindigkeit wurde um das 100-1000-facheerhöht .
  • Umbenennung von AACommandIdentifier in AACapabilityIdentifier.
  • Andere kleinere Korrekturen.

iOS HMCryptoKit Version 1.2.6

  • Aktualisierte Abhängigkeiten und Code, der sie verwendet.

iOS HMKit Version 3.0.2 Beta

  • Aktualisierte Abhängigkeiten und begleitende Frameworks.

iOS HMUtilities Version 1.4.0

  • -compactMapConcurrently zu Collection hinzugefügt.
  • Die Funktion -init-s von HMBytesConvertable wurde verbessert.
  • Entfernt .bytes und .data aus der UInt8-Sammlung.

Android SDK Version 1.6.8

  • Diese Version behebt ein Problem, bei dem Zertifikate nicht gelöscht wurden.

Java Auto API Version 2.10.1

  • Behebt einen Absturz beim Parsen ungültiger Befehlsdaten.

iOS Auto API Version 10.0.3

  • Mehrere AAItem-Subtypen behoben.
  • Weitere kleinere Probleme, die bei Tests gefunden wurden, wurden behoben.
  • Veraltete Dateien wurden entfernt.

iOS HMUtilities Version 1.3.3

  • Der HMBytesConvertable .bytes-Wert von Int8 wurde korrigiert.
  • Verbesserter HMBytesConvertable-Code.

iOS Auto API Version 10.0.2

  • Aktualisiert auf Swift 5.
  • Einige überholte Typenwurden entfernt .
Korrekturen für:
  • AACheckControlMessage
  • AAHistorisch
  • AANaviDestination
  • AANachrichten
  • AARace
  • Mehrere Typen, die mit AAItem konform sind

iOS Auto API Version 7.3.4

  • Aktualisiert auf Swift 5.
  • Aktualisierte Abhängigkeit HMUtilities auf 1.3.x.

iOS HMCryptoKit Version 1.2.5

  • Aktualisiert auf Swift 5.

iOS HMKit Version 3.0.1 Beta

  • Aktualisiert auf Swift 5.
  • Der Befehl " Gerätezertifikat abrufen " wurde korrigiert.
  • MTU-Größe zum BT-Info-Merkmal hinzugefügt.

iOS HMKit Version 2.5.4

  • Aktualisiert auf Swift 5.

iOS HMUtilities Version 1.3.2

  • Aktualisiert auf Swift 5.

Node.js SDK Version 10.0.0

Diese Version enthält wichtige Änderungen der öffentlichen API. Beachten Sie, dass es weiterhin möglich ist, die vorherige Node.js SDK-Version zu verwenden.
  • Alle Eigenschaften sind jetzt Objekte. Derzeit enthalten Eigenschaften nur den Wert, aber diese Verbesserung bereitet uns auf eingehende Änderungen vor, bei denen wir auch Zeitstempel und Fehler für jede Eigenschaft einzeln senden können.
  • Der Motor antwortet jetzt mit on statt powered_on und off statt powered_off.

REST API v2

Neue Version der REST API. V1 wird noch eine Zeit lang funktionieren, aber es wird empfohlen, so bald wie möglich auf die neuere API zu aktualisieren. Nur v2 ist für den Zugriff auf Fahrzeugdaten in der Produktion aktiviert.
  • V2-Sandkasten-URL https://sandbox.rest-api.high-mobility.com/v2
  • Eigenschaften werden in Objekte umgewandelt, die helfen, mehr Daten über eine bestimmte Eigenschaft zu senden.
  • Kleinere Verbesserungen bei der Fehlerbehandlung.

Java Auto-API 2.10.0

Diese Auto-API-Version enthält die Änderungen der öffentlichen Schnittstelle, die das Protokoll der Stufe 10 widerspiegeln.

Alle Werte sind jetzt in eine Eigenschaft verpackt. Das bedeutet, dass für den Zugriff auf den Eigenschaftswert die Funktion property.getValue() aufgerufen werden muss.

Property hat auch die Komponenten failure und timestamp. Alle diese Komponenten sind optional.

Leitfaden für die Migration auf 2.10.0:
  • Auf Eigenschaftswerte muss mit Property.getValue() zugegriffen werden. Zum Beispiel: LightsState.getAmbientColor() sollte geändert werden in LightsState.getAmbientColor().getValue().
  • Wenn der Wert Null ist, liegt möglicherweise eine Fehlerkomponente vor, oder diese Eigenschaft ist für dieses Fahrzeug einfach nicht vorhanden.
  • Einige Pakete sind geändert worden. Viele Klassennamen sind immer noch dieselben, löschen Sie also den ungültigen Import und versuchen Sie, erneut zu importieren.
  • Ersetzen Sie CommandWithProperties durch Command.

Android SDK 1.6.7

  • Hinzufügen von Refresh-Token-Unterstützung für OAuth.

Java Auto-API 1.7.3

Diese Version enthält Parsing-Unterstützung für MultiCommand und MultiState. Weitere Informationen finden Sie in der Code-Referenz.

iOS Auto-API Version 7.3.3

  • MultiCommand wurde eine Antwort auf mehrere Zustände hinzugefügt.

iOS HMUtilities Version 1.3.1

Die Initialisierung von vorzeichenbehafteten Ganzzahlen für HMBytesConvertable wurde korrigiert.

iOS Auto-API Version 10.0.1

Die Debugging-Eigenschaft .debugTree: HMDebugTree von AACapability wurde korrigiert, um den neuen L10 korrekt zu parsen.

Auto API Level 10

Auto API Level 10 bringt Protokollaktualisierungen für Eigenschaften auf binärer Ebene. Die Eigenschaften umfassen nun Daten, Zeitstempel und Fehlerkomponenten. Dies ermöglicht eine bessere SDK-Behandlung aller möglichen Szenarien beim Abrufen von Daten über verschiedene Fahrzeugmarken hinweg. Das neue Protokoll ist auf der Übersichtsseite der Auto-API-Eigenschaften definiert.

Zusätzliche Aktualisierungen in Level 10:
  • Alle Zeitstempel werden jetzt als UNIX-Epochenzeit in Millisekunden formatiert.
  • Prozentsätze als Dezimalzahlen formatiert.

iOS SDK Version 2.5.3

  • Probleme mit OAuth-Token behoben.
  • Es wurde eine Methode zum Abrufen eines Zugriffstokens mit einem Refresh-Token hinzugefügt.
  • Aktualisierung der Abhängigkeitsversionen.

iOS SDK Version 3.0.0 Beta

  • Überarbeitetes HMKit.
  • Zu den wichtigsten Schnittstellenänderungen gehört die Umbenennung von HMLocalDevice in HMKit.
  • Umbenennung von delegierten Methoden.
  • Umwandlung der meisten öffentlichen Methoden in werfende Methoden.
  • Und mehr...

iOS Auto API Version 10.0

  • Eigenschaften werden in einen neuen Typ AAProperty verpackt.
  • Capabilities entsprechen einem neuen Typ AACapability.
  • Die Methoden der ausgehenden Befehle geben einen neuen Typ AACommand zurück, der den .bytesaccessor hat, um die zu sendenden Daten zu erhalten.

iOS HMUtilities Version 1.3.0

Hinzufügen eines neuen Typs HMBytesConvertable und Anpassung der folgenden Typen an diesen Typ: Bool, Date, Double, Float, String, URL, Integer mit und ohne Vorzeichen.

Java Auto-API Levle 10

Die Java Auto-API auf Level 10 wird aktualisiert. Beachten Sie, dass die Prozentwerte jetzt double statt float sind. Beachten Sie, dass es keine Zeitzonen für Daten mehr gibt, die immer der UTC-Zeit entsprechen.

Android SDK Version 1.6.6

Behoben: OAuth zeigt einen leeren Bildschirm.

Android SDK Version 1.6.5

Mögliche Fehler bei der Bluetooth-Autorisierung wurden behoben.

Auto-Emulator Version 2.3.0

  • Porsche Cross Turismo Auto-Emulator hinzugefügt.
  • Automatische API Level 10 Kompatibilität für Eigenschaftskomponenten. Für Entwickler ist es notwendig, die neuesten SDKs zu verwenden, um mit dem Emulator zu arbeiten.

Node.js SDK Version 0.8.0

Diese Version enthielt nur interne Änderungen an der Logik für die Behandlung von Eigenschaftskomponenten der Auto-API-Ebene 10. Es gab keine Änderungen an der öffentlichen API.

Auto-Emulator Version 2.2.4

  • KTM 1290 Super Duke und Mercedes EQC Emulatoren hinzugefügt.
  • Die Auswahl der Fahrzeugposition wurde korrigiert und die Genauigkeit erhöht.
  • Porsche Cayenne Reifendruckanzeige behoben.

Android SDK Version 1.6.4

  • Diese Version behebt Probleme mit dem OAuth2-Flow.

Auto API Level 9

Diese Plattformversion enthält inkrementelle Aktualisierungen der API durch die Einführung von Auto API Level 9 zusammen mit OAuth2-Updates. Jede Komponente weist weitere Verbesserungen auf.
  • Die Beleuchtungseinrichtungen wurden für Nebelscheinwerfern, Leselampen und Innenleuchten aktualisiert.
  • Die Diagnosefunktion wird mit der Kilometerleistung in Metern aktualisiert.
  • Türschlösser Eigenschaft aktualisiert mit allen Türen Lage Möglichkeit.
  • Failure Message Reason Eigenschaft erweitert mit Rate Limit Fehler.
  • MultiCommand hinzugefügt für die Möglichkeit, mehrere Befehle gleichzeitig zu senden.
  • Fahrzeugstatus mit Markeneigenschaft aktualisiert.
  • Die Betankungsmöglichkeit wurde mit dem Status der Gasklappensperre aktualisiert.
  • Universelle Eigenschaft für die Meldung einzelner fehlerhafter Eigenschaften hinzugefügt.

OAuth2

  • Der Abfrageparameter "Scope" wird beim Starten des OAuth-Flows nicht mehr benötigt.
  • Der Zugangstoken-Endpunkt gibt jetzt ein Refresh-Token zurück, das zur Anforderung eines neuen Zugangstokens verwendet werden kann.
  • Mobile und Native Apps müssen nun PKCE im OAuth-Flow verwenden.

Auto-Emulator Version 2.2.3

  • Unterstützung für Auto API Level 9 hinzugefügt.
  • Kleiner Fehler bei der Übertragung von Fahrzeugzustandsänderungen behoben.
  • Kleinere Korrekturen bei der Protokollierung.
  • Verbesserte Validierung der Geräteberechtigungen.

Node.js SDK 0.7.3

  • Unterstützung für Auto API Level 9 hinzugefügt.
  • Die Eigenschaften der vorderen Außenbeleuchtung, der Nebelscheinwerfer, der Leselampen und der Innenlampenwurden zur Beleuchtungsfunktion hinzugefügt.
  • Die Eigenschaft " Kilometerzähler " wurde zur Diagnosefunktion hinzugefügt.
  • Grund für den Ausfall der Ratenbegrenzung hinzugefügt.
  • Mehrbefehlsfähigkeit hinzugefügt.
  • Die Markeneigenschaft wurde zum Fahrzeugstatus hinzugefügt.
  • Zu den Betankungsmöglichkeiten wurden die Eigenschaften " Gasklappenverriegelung" und " Gasklappenposition " hinzugefügt.

iOS Auto API Version 9.0

  • Unterstützung für Auto API Level 9 hinzugefügt.
  • Alle veralteten Typen wurden entfernt.
  • .fogLights, readingLamps und .interiorLamps zu AALights hinzugefügt; auch .frontExteriorLights aktualisiert.
  • .states zu AAMultiCommand hinzugefügt - wird zurückgegeben, wenn ein Multicommand gesendet wird.
  • .gasFlapLock und .gasFlapPosition zu AAFueling hinzugefügt.
  • Neuer Typ AAPropertyFailure, um mitzuteilen, dass das Abrufen einer Eigenschaft fehlgeschlagen ist.
  • Aktualisierung von .insideLocks, .locks und .positions in AADoorLocks.
  • .failureReason in AAFailureMessage aktualisiert.

Java Auto-API 1.9.0

  • Unterstützung für Auto API Level 9 hinzugefügt.
  • Suchen Sie in der Android-Code-Referenz nach Befehlsaktualisierungen.
  • Siehe Multi-Befehl für Multi-Befehl-Code-Referenz.

REST Auto-API Version 1.4.0

  • Unterstützung für Auto API Level 9 hinzugefügt.
  • Das neue Node.js SDK hilft der REST API, informativere Fehler zurückzugeben.

Ältere Veröffentlichungen

iOS SDK Version 2.5.2

  1. Fehler bei der Entschlüsselung von Befehlen, die zur gleichen Zeit ausgehen und ankommen, behoben.
  2. HMLogginOptions wurde erheblich verbessert.

Ältere Veröffentlichungen

Diese Plattformversion enthält mehrere URL-Änderungen, die auf der neuen Serverarchitektur basieren, die gerade eingeführt wird. Beachten Sie, dass sich der Begriff "Sandbox" auf alle Endpunkte für die Arbeit mit den Autoemulatoren während der Entwicklung von Anwendungen bezieht.

OAuth2

Die Basis-URL der Sandbox wurde auf https://sandbox.api.high-mobility.com/hm_cloud/geändert.

Dienstkonto-API

Die Basis-URL der Sandbox wurde auf https://sandbox.api.high-mobility.com/v1geändert.

REST API

Die Basis-URL der Sandbox wurde auf https://sandbox.rest-api.high-mobility.com/v1geändert.

Node.js SDK Version 0.7.2

  1. Geänderte interne API-URLs.
  2. Der API-Endpunkt wird jetzt automatisch anhand des Herausgebers des Client-Zertifikats ausgewählt.

iOS SDK Version 2.5.1

  1. Neue HMOAuth Implementierung und Ablauf.
  2. SDK erhält die richtige URL von HMDeviceCertificate.

iOS Auto-API Version 8.0.1

  1. Neuer AAMulticommand - Möglichkeit, mehrere Befehle gleichzeitig zu senden.
  2. .mileageMeters zu AADiagnostics hinzugefügt.
  3. .sunroofState zu AARooftopControl hinzugefügt.

iOS HMCryptoKit Version 1.2.3

  1. Fähigere .signature-Methode zur Verwendung in ungepolsterter Form für das JWT.
  2. Öffentliche SHA256-Methode.

Android SDK Version 1.6.2

  1. Hinzufügen des OAuth2-Moduls zum SDK. OAuth2 wird verwendet, um das Zugriffstoken zum Herunterladen eines Fahrzeugzugangszertifikats zu erhalten.
  2. Überarbeitung der Auswahl der Web-Umgebung. Web-Umgebung wird automatisch ausgewählt oder kann in HMKit.webUrl eingestellt werden. HMKit.environment wird entfernt.

Ältere Veröffentlichungen

Auto-Emulator Version 2.2.1

  1. Fehlende Fahrzeugzustandseigenschaften hinzugefügt(Motorvolumen, maximales Drehmoment, Getriebe, Anzeigeeinheit, Fahrersitzposition, Ausstattung).
  2. IOTA Auto und IOTA Ladegerät Emulatoren hinzugefügt.
  3. Fehlende Eigenschaften von Autos wurden korrigiert und hinzugefügt.
  4. Mein Profil-Link behoben

Node.js SDK Version 0.7.1

  1. Fehlende Fahrzeugzustandseigenschaften hinzugefügt (engineVolume, engineMaxTorque, gearbox, displayUnit, driverSeatLocation, equipment).
  2. Die Zwischenspeicherung von Zertifikaten für Mehrfachzugriff wurde behoben.
  3. Automatisierte Tests hinzugefügt.

Ältere Veröffentlichungen

Wichtige Aktualisierung aller SDKs, APIs und Emulatoren, mit der Auto-API Level 8 eingeführt wird.

Auto-API Level 8

Die neueste Version der Auto-API enthält interne Protokollverbesserungen und einen erweiterten Datensatz von Fahrzeugdaten. Zusammengefasst:

  1. Neue Fähigkeiten und Eigenschaften.
  2. Protokollunterstützung für historische Zustände.
  3. Es ist möglich, zu jeder einzelnen Eigenschaft eine Zeitstempel-Eigenschaft hinzuzufügen.
  4. Jeder Befehl umhüllt jetzt Parameter als Eigenschaften. Dies ist eine interne Änderung, die von den SDKs/REST API intern behandelt wird.

Neue Möglichkeiten:

  1. Mobil: Ermittlung des Status eines verbundenen Mobiltelefons.
  2. Verwendung: Metriken über den Fahrstil.
  3. Verdeck: Ermittlung des Zustands des offenen/geschlossenen Verdecks.
  4. Historisch: Abruf historischer Daten für beliebige Zustände.

Aufladefähigkeit:

  1. Zusätzlicher maximaler Ladestrom
  2. Zusätzlicher Steckertyp
  3. Hinzugefügt, wenn ein Ladefenster gewählt wurde
  4. Zusätzliche Abfahrtszeiten
  5. Zusätzliche Reduzierung der Ladestromzeiten
  6. Zusätzliche Batterietemperatur
  7. Ladetimer hinzugefügt
  8. Zustand "eingesteckt" hinzugefügt
  9. Zusätzlicher Ladezustand
  10. 0x01 Ladezustand verworfen (aufgeschlüsselt nach eingestecktem Zustand und Ladezustand)
  11. 0x0D verworfen Ladezeitgeber (ersetzt durch Ladezeitgeber)

Fahrgestell-Einstellungsmöglichkeiten:

  1. Eigenschaften der Federraten durch neues Format ersetzt
  2. Eigenschaften der Fahrgestellposition durch neues Format ersetzt

Klima-Funktionalität:

  1. Zusätzliche HVAC (Heating, ventilation, and air conditioning) Startzeiten an Wochentagen
  2. Temperatureinstellung der Rücksitze hinzugefügt
  3. Klimaprofil verworfen (ersetzt durch HVAC-Wochentagsstartzeiten)
  4. Befehl "Temperatureinstellungen festlegen" hinzugefügt

Beleuchtungsmöglichkeiten:

  1. Set Lights State in Control Lights umbenannt

Überdachungs-Funktionalität:

  1. Zustand des Cabriodachs hinzugefügt
  2. Schiebedachkippfunktion hinzugefügt

Sitzplatz-Funktionalität:

  1. Personen erkannt hinzugefügt
  2. Sicherheitsgurte angeschnallt hinzugefügt
  3. Sitze verworfen (ersetzt durch die oben genannten Eigenschaften)

Fenster-Funktionalität:

  1. Offene Prozentsätze hinzugefügt
  2. Positionen hinzugefügt
  3. Fenster verworfen (ersetzt durch die oben genannten Eigenschaften)

Windschutzscheiben-Funktionalität:

  1. Befehl Control Wipers hinzugefügt

Diagnostik-Funktionalität:

  1. Batteriestand hinzugefügt
  2. Meldungen zur Prüfkontrolle hinzugefügt
  3. Reifendruck hinzugefügt
  4. Raddrehzahlen hinzugefügt
  5. Fehlercodes hinzugefügt
  6. Reifen verworfen (ersetzt durch die drei oben genannten Eigenschaften)
  7. Aktueller Kraftstoffverbrauch verworfen (verschoben zu Usage capability)
  8. Durchschnittlicher Kraftstoffverbrauch verworfen (verschoben in die Nutzungsfunktion)

Wartungsfunktionalität

  1. Anzahl der CBS-Berichte hinzugefügt
  2. Monate für die Abgasuntersuchung hinzugefügt
  3. Teleservice-Verfügbarkeit hinzugefügt
  4. Schwellenwert für den nächsten Kundendienst hinzugefügt
  5. Schwellenwert für die Servicezeit hinzugefügt
  6. Automatisches Datum für Teleservice-Anrufe hinzugefügt
  7. Datum für den Anruf des Teleservice-Akkus hinzugefügt
  8. Datum der nächsten Inspektion hinzugefügt
  9. Zustandsabhängige Dienste hinzugefügt
  10. Datum für Bremsflüssigkeitswechsel hinzugefügt

Race-Funktionalität:

  1. Fahrzeugbewegung hinzugefügt

Türverriegelungs-Funktionalität:

  1. Schlösser hinzugefügt
  2. Positionen hinzugefügt
  3. Türen verworfen (ersetzt durch die beiden oben genannten Eigenschaften)
  4. Externe Sperren verworfen (stattdessen sollten Sperren verwendet werden)

Fahrzeugstatus-Funktionalität:

  1. Anzeigeeinheit hinzugefügt
  2. Position des Fahrersitzes hinzugefügt
  3. Ausrüstungen hinzugefügt

Funktionalität Heim-Ladestation:

  1. Authentifizierungsstatus hinzugefügt
  2. Ladestrom (DC) hinzugefügt
  3. Maximaler Ladestrom hinzugefügt
  4. Mindestladestrom hinzugefügt
  5. Ladestrom verworfen (ersetzt durch die drei oben genannten Eigenschaften)
  6. Koordinaten erweitert von float auf double
  7. Preistarife für Kryptowährungen erweitert
  8. Befehl Authentifizierung/Löschen der Sitzung hinzugefügt

Navi-Zielfunktion:

  1. Koordinaten erweitert von float auf double

Funktion zur Fahrzeugortung:

  1. Koordinaten erweitert von float auf double
  2. Höhe erweitert von float zu double
  3. Überschrift von Float auf Double erweitert

Auto-Emulator Version 2.2.0

  1. Auto API 8 neue Fähigkeiten und Eigenschaften hinzugefügt.
  2. Es wurde eine Fahrzeugortungsanzeige neben den Protokollen hinzugefügt, während die Simulation mit Fahrzeugortungsfunktion läuft.
  3. Fehler in der Simulationsleistung wurden behoben.
  4. Fehler im Zusammenhang mit der Schaltfläche "Entwicklerzentrum" behoben.

iOS SDK Version 2.5.0

  1. Die Latenzzeit der Bluetooth-Verbindung wurde verbessert.
  2. HMOAuth-Klassen zur einfacheren Verwendung hinzugefügt.
  3. Umfangreiche Umbenennung - alle Typen haben jetzt ein "HM"-Präfix, um die Verschmutzung des Namensraums zu beseitigen.

iOS Auto API Version 8.0.0

  1. Größtenteils neu geschrieben mit einer Menge zusätzlicher Fähigkeiten, Eigenschaften und Befehlen. Überprüfen Sie das Auto API 8 Changelog zur Übersicht über neue Möglichkeiten.
  2. Alle Typen haben jetzt ein "AA"-Präfix, um Namespace-Verschmutzung zu beseitigen.
  3. Nicht mit Level 7 kompatibel, aber die Nutzung von L7 wurde vorübergehend durch "alte" Zugangspunkte ermöglicht. Diese Unterstützung wird in Zukunft eingestellt werden.

Java Auto-API 1.8.1

Diese Version bietet Unterstützung für Auto-API Level 8. Bitte beachten Sie, dass diese Version nicht mit Auto-API Level 7 (Paket 1.8.0) kompatibel ist und Ihr Auto-API-Code wahrscheinlich aktualisiert werden muss.

Android SDK Version 1.6.1

  1. Erhöhung des Limit für die Befehlsgröße.
  2. Broadcaster.revokeCertificate() löscht die Zertifikate nicht mehr.
  3. Aktualisierung der Produktions-URL.

Node.js SDK Version 0.7.0

  1. Probleme mit Node v10.x wurden behoben. Node.js SDK funktioniert jetzt mit allen Node-Versionen von v8.9 bis v10.x. Node v11 wird noch nicht unterstützt.
  2. Befehle und Antworten der Auto-API Level 8 hinzugefügt.
  3. Automatisierte Tests für neue Auto-API Level 8 Befehle und Antworten wurden hinzugefügt.
  4. Der Speicherort der HMKit-internen Zertifikats-Cache-Json-Datei kann mit dem Umgebungsparameter HM_NODE_SDK_STORAGE_PATH geändert werden.

REST Auto-API Version 1.3.0

  1. Die REST API ist jetzt serverlos und läuft auf AWS Lambda. Dies hilft uns, in Zukunft leichter zu skalieren.
  2. Auto-API Level 8 Endpunkte hinzugefügt.
  3. Auto-API Level 8 Tests hinzugefügt.
  4. Das neue Node.js SDK hilft der REST API, informativere Fehler zurückzugeben.

Ältere Veröffentlichungen

iOS SDK Version 2.4.2

  1. Es wurde behoben, dass die Bluetooth-Übertragungswarteschlange von iOS in einigen Fällen voll war und keine Daten gesendet wurden.

Android SDK Version 1.6.0

Mit dieser Version werden einige Änderungen an der öffentlichen API des SDK eingeführt.

  1. Umbenennung Manager in HMKit.
  2. Link-Status NOT_AUTHENTICATED hinzugefügt. Dieser wird nach einem Widerruf oder bei fehlgeschlagener Authentifizierung gesetzt.
  3. Manager.initialise führt zu einem Fehler, wenn es bereits initialisiert ist. Manager.setDeviceCertificate sollte verwendet werden, um ein neues Gerätezertifikat zu setzen.
  4. Manager.loggingLevel nach HMLog.Level verschoben
  5. Umbenennung von downloadCertificate() in downloadAccessCertificate()
  6. IllegalStateException, die von Manager-Methoden ausgelöst wird, löschen. Manager erwartet, dass initialise aufgerufen wird und wirft andernfalls unchecked.
  7. getBroadcaster() ist nullbar, kann null sein, wenn BLE physisch nicht unterstützt wird.

Ältere Veröffentlichungen

iOS SDK Version 2.3.7

  1. Deaktiviert BT ausgeschaltet System UI Warnung.

OAuth2-API-Aktualisierung

  1. expires_in zum Antwortobjekt des Zugriffstokens hinzugefügt. Alle Details im OAuth2-Tutorial.

Ältere Veröffentlichungen

Android SDK Version 1.5.0

  1. Behebung des fehlenden Bluetooth-Dienstes nach dem Ein- und Ausschalten von BLE.
  2. Behebung des ungültigen Senderstatus BLUETOOTH_UNAVAILABLE nach dem Aus-/Einschalten von BLE.
  3. Warten auf das Hinzufügen des BLE-Dienstes, bevor mit der Übertragung begonnen wird.

Ältere Veröffentlichungen

Node.js SDK Version 0.6.1

  1. Die Logik für die Zwischenspeicherung von Zugriffszertifikaten wurde verbessert, um sie schneller zu machen.
  2. Validierung des privaten Schlüssels des Clients hinzugefügt.
  3. Geänderte API Url des Produktionsservers.
  4. Fehlende automatisierte Tests hinzugefügt.

REST Auto-API Version 1.2.1

  1. Geänderte interne Server API Url.
  2. Dank des Node.js-SDK-Updates werden Anfragen nun viel schneller bearbeitet.

Ältere Veröffentlichungen

iOS SDK Version 2.3.6

  1. Behebung von Doppelübertragungen (hatte keine Auswirkungen auf die Nutzung), mit zusätzlichen Sicherheitsvorkehrungen für den Start von Werbung.
  2. Bearbeitet den eingehenden Widerrufsbefehl - löscht das Zertifikat und ändert den Status auf .connected.
  3. Die maximale Größe des benutzerdefinierten Befehls wurde um 1 Byte reduziert, um die Protokollbytes korrekt zu berücksichtigen.
  4. Live Ping Korrekturen.

Ältere Veröffentlichungen

Android SDK Version 1.4.0

  1. Die Validierung von Zertifikatsinitialisierungsbytes wurde verbessert.
  2. Jetzt können Sie entweder base64 oder hex in Manager.initialize() verwenden.
  3. Behebung einer möglichen getLinks() NPE bei Manager.terminate()
  4. Einige zuvor veraltete Methoden wurden entfernt.

Es gibt einige interne Änderungen in der Logik des SDKs:

  1. Die Übertragung wird jetzt mit Manager.terminate() beendet.
  2. Die Übertragung wird bei Broadcaster.disconnectAllLinks() nicht gestoppt. stopBroadcasting() hat sich als hilfreich beim Trennen der verbundenen Verbindungen erwiesen. Aufrufen von stopBroadcasting() nach disconnectAllLinks(), um die Chancen zum Trennen der BLE-Verbindungen zu verbessern.

Ältere Veröffentlichungen

Node.js SDK Version 0.6.0

  1. Speicherleck behoben - Garbage Collection hatte nicht alles aufgeräumt, wenn die HMKit-Instanz zerstört wurde.
  2. Probleme mit mehreren HMKit-Instanzen behoben. In früheren Versionen, wenn im gleichen Node.js-Anwendungsprozess mehrere HMKit-Instanzen erstellt wurden (const hmkit1 = new HMKit(); const hmkit2 = new HMKit();), begannen sie sich unerwartet zu verhalten, da alle Instanzen noch durch nativen Code verbunden waren.

Swift Auto API Version 7.2.2

  1. Aus Gründen der Übersichtlichkeit wurden die UInt8-Typen, die einen Wert von 0-100% darstellen, durch PercentageInt ersetzt.

Ältere Veröffentlichungen

Java HMKit-Krypto Version 1.3.2

  1. Problem mit der Stundenanalyse von Access-Zertifikaten behoben. Jetzt werden 24-Stunden-Zyklen anstelle von 12-Stunden-Zyklen verarbeitet.

Ältere Veröffentlichungen

Diese Aktualisierungen könnten für die Benutzer der HMKit-OEM-Bibliothek nützlich sein.

Java HMKit-Krypto Version 1.3.1

  1. Hinzufügen der Berechtigungsklasse zur Verwendung bei der Erstellung von Zugriffszertifikaten.

Java HMKit-Auto-API Version 1.8.0

  1. Umbenennung von com.highmobility.autoapi.property.ControlMode in ControlModeValue
  2. Die Befehlsbasiseigenschaften nonce und signature sind jetzt Bytes anstelle von byte[].

Ältere Veröffentlichungen

Android SDK Version 1.3.0

  1. Widerrufen hinzugefügt. Rufen Sie Link.revoke() auf, um die Link-Autorisierung zu widerrufen.
  2. Die Zeitüberschreitung für Befehle ist nun mit Link.commandTimeout konfigurierbar. Der Wert wird in ms angegeben, Standard ist 10000.

iOS SDK Version 2.3.5

  1. Alive ping Korrekturen und Verbesserungen � sendet jetzt ein einzelnes Byte (vorher war es leer).
  2. Zusätzliche Protokollierung hinzugefügt.

Ältere Veröffentlichungen

Node.js SDK Version 0.5.2

  1. Alias .getSerial() für die Funktion .getVehicleSerial() hinzugefügt.
  2. Unterstützung für Auto-API Level 7 wurde hinzugefügt.
  3. Verbesserte Fehlerbehandlung. Es werden mehr Ausnahmen mit informativeren Meldungen angezeigt.
  4. Fehler behoben, bei denen fehlende Argumente den Befehl unwirksam machten.
  5. Unnötige Protokollierung wurde entfernt.

REST Auto-API Version 1.1.0

  1. Unterstützung für Auto API Level 7 hinzugefügt.
  2. Verbesserte Fehlerbehandlung. Die API zeigt jetzt informativere Fehler an.
  3. Rückgabe des Status 401 anstelle von 400, wenn der Benutzer nicht autorisiert ist.

Ältere Veröffentlichungen

Android SDK Version 1.2.0 und Java-Bibliotheken aktualisiert

Ab dieser Version verwenden alle öffentlichen Java SDK-Methoden unsere benutzerdefinierte Bytes-Klasse anstelle von byte[]. Sie kann jetzt zum Beispiel für den Zugriff auf Zertifikateigenschaften oder zum Senden von Link-Befehlen verwendet werden.

  1. Beispiel zum Abrufen der Seriennummer aus dem Zugriffszertifikat: DeviceSerial serial = certificate.getGainerSerial()
  2. Es besteht keine Notwendigkeit mehr, .getBytes() für Befehle zu verwenden, stattdessen kann die Klasseninstanz direkt übergeben werden: link.sendCommand(new LockUnlockDoors(DoorLock.LOCKED), serial, callback)

Die Klasse Bytes kann auch für neue Konstruktoren und einige Komfortmethoden wie Bytes.getHex() und Bytes.equals() verwendet werden.

  1. Um einen Befehl mit einer Hexadezimal- oder Base64-Zeichenkette zu vergleichen: command.equals(new Bytes("00AA"))
  2. Protokollieren eines Befehls in Hex: log("bytes in hex " + command.getHex())

Ältere Veröffentlichungen

Java Auto-API Version 1.6.8

  1. Unterstützung für Auto-API Level 7 hinzugefügt
  2. Einige LockState-Eigenschaften wurden umbenannt/verworfen.

Ältere Veröffentlichungen

iOS SDK Version 2.3.4

  1. Unterstützung für Auto-API Level 7 hinzugefügt
  2. DebugTree nach HMUtilities verschoben
  3. .serial getter für LocalDevice hinzugefügt
  4. Neue Funktion zum Senden von .revoke an einen verbundenen Link
  5. Neuer Fehler LocalDeviceError.uninitialised � bedeutet, dass das Zertifikat und die Schlüssel nicht gesetzt sind

Ältere Veröffentlichungen

Android SDK Version 1.1.17

  1. Behebung seltener Abstürze beim Senden von Telematikbefehlen oder beim Trennen der Bluetooth-Verbindung.

Java Auto-API Version 1.6.7

  1. Einige Lockstate-Eigenschaften werden aufgehoben/umbenannt
  2. Fixes Navi-Ziel setzen.

iOS SDK Version 2.3.3

  1. startBroadcasting(configuration: Configuration?) wurde so korrigiert, dass die alte Konfiguration nicht überschrieben wird, wenn nil übergeben wird.

Ältere Veröffentlichungen

Android SDK Version 1.1.16

  1. Der Gerätename wird nicht mehr angezeigt, wenn nicht der benutzerdefinierte High-Mobility-Name in BroadcastSettings verwendet wird. Dies behebt einen Absturz bei Geräten mit längeren Namen.

Ältere Veröffentlichungen

iOS SDK Version 2.3.2

  1. Bundle-Identifier und andere Lauffehler behoben

Ältere Veröffentlichungen

iOS SDK Version 2.3.1

  1. HMKit: LocalDeviceBroadcastingConfiguration umbenannt in LocalDeviceConfiguration
  2. Konfigurations-Init-Funktion geändert, um von der Deaktivierung der Verschlüsselung abzuraten

Ältere Veröffentlichungen

Android SDK Version 1.1.15

  1. Fassen Sie alle Broadcasting-Einstellungen in einem BroadcastConfiguration-Objekt zusammen. Verwenden Sie BroadcastConfiguration.Builder, um Ihre Broadcast-Konfiguration zu erstellen und sie an die Methode broadcaster.startBroadcasting zu übergeben.
  2. Erklärung
  3. BroadcastConfiguration conf = new BroadcastConfiguration.Builder().setOverridesAdvertisementName(false).build();broadcaster.startBroadcasting(new Broadcaster.StartCallback() {@Override public void onBroadcastingStarted() { Log.d(TAG, "onBroadcastingStarted: ");}@Override public void onBroadcastingFailed(BroadcastError error) { Log.d(TAG, "onBroadcastingFailed: ");}}, conf);
  4. setIsAlivePinging() geändert in startAlivePinging(long interval). Verwenden Sie stopAlivePinging(), um das Pingen zu beenden.

Ältere Veröffentlichungen

iOS SDK Version 2.3.0

Dieses Update folgt den Veröffentlichungen von Swift 4.1 und Xcode 9.3 und bringt die Kompatibilität der HMKit-Bibliotheken zu beiden. Vollständige Details:

  1. Die Anzahl der HMKit-Frameworks wurde von 3 auf 5 Bibliotheken erweitert, um die Modularität zu erhöhen. Der empfohlene Weg, um auf die neueste Version zu aktualisieren, besteht darin, die alten Frameworks aus dem Projekt und im Finder zu löschen und dann die neuen auf "Embedded libraries" in der Xcode-Projektübersicht zu ziehen.
  2. CommonCrypto: Einbindung der CommonCrypto (im Grunde OpenSSL mit "Apple"-Geschmack) Modulkarte von IBM; CommonCrypto GitHub-Seite.
  3. HMCryptoKit: Neue, von Grund auf neu geschriebene Swift-Krypto-Bibliothek; hm-crypto-kit-swift GitHub-Seite.
  4. HMUtilities: Dies umfasst allgemeine Erweiterungen und andere nützliche Funktionen; hm-utilities-swift GitHub-Seite.
  5. HMKit: LocalDeviceBroadcastingConfiguration ist ein neuer Konfigurationstyp für Broadcasting (auch zugänglich über LocalDevice.shared.configuration); aktualisierte Abhängigkeiten; einige andere kleinere Korrekturen.

Diese Version wurde auf iOS und macOS getestet und sollte auch auf tvOS, watchOS und Linux funktionieren; verwendbar mit dem Swift Package Manager.

Ältere Veröffentlichungen

Es handelt sich dabei um eine größere Version für alle SDKs, APIs und die Benutzeroberfläche des Developer Centers selbst.

Auto API Level 6

Die neueste Version der Auto-API verfügt über ein neues internes Protokoll, das Konsistenz und Flexibilität für verschiedene Varianten von Fahrzeugfunktionen bietet. Jede Funktion (z. B. Diagnose) hat jetzt eine Liste von Eigenschaften. So funktionieren sie:

  1. Eine Funktion gibt nun alle Arten von Eigenschaften an, die ein Fahrzeug möglicherweise unterstützen könnte, aber das Fahrzeug enthält nur die Eigenschaften, die es tatsächlich unterstützt.
  2. Eigenschaften machen "nicht verfügbare" Daten überflüssig, da sie einfach nicht im Status enthalten sind.
  3. Ein Zustand kann mehrere Eigenschaften mit der gleichen ID haben, dies ist z.B. bei der Türeigenschaft der Fall, für jede Tür wird eine Eigenschaft zurückgegeben.
  4. Es gibt universelle Eigenschaften, die in jedem Zustand enthalten sein können; die Kennung für diese Eigenschaften beginnt mit 0xA_.
  5. Eigenschaften werden auch bei SET-Befehlen (z.B. Open/Close Trunk) verwendet, allerdings nur, wenn der SET-Befehl mehrere Eigenschaften betrifft. Wenn sich der SET-Befehl nur auf eine Eigenschaft bezieht (z. B. Set Charge Limit), wird das Eigenschaftsformat weggelassen.
  6. Die Verwendung von Eigenschaften ist in allen Funktionen implementiert worden.

In Bezug auf die Funktionalitäten ist es nicht mehr so, dass jede Funktionalität ihr eigenes Format definiert, was in der Funktionalitätsnachricht enthalten ist:

  1. Jede Funktionalität, die das Fahrzeug unterstützt, ist als 0x01 Capability Property enthalten. Der Capability Identifier ist zusammen mit einer Reihe von Message Type IDs, die das Fahrzeug verarbeiten kann, enthalten.
  2. Wenn das Gerät keine Berechtigung hat, z. B. die Türen zu ver- und entriegeln, wird dieser Nachrichtentyp nicht in das Array aufgenommen.

Es gibt viele neue Eigenschaften, die zu bestehenden Funktionalitäten hinzugefügt wurden. Es gibt jedoch auch einige völlig neue Funktionalitäten:

  1. Beschleunigung
  2. Offroad
  3. Chassis-Einstellungen
  4. Sitze
  5. Feststellbremse
  6. Fahrzeugalter
  7. Lichtverhältnisse
  8. Wetterbedingungen
  9. Home Charger

HMKit Kern

HMKit Core, die Komponente, die von allen SDKs implementiert wird, wurde mit den folgenden Änderungen aktualisiert:

  1. Der Befehlscontainer wurde vergrößert, damit größere Nachrichten als 256 Bytes gesendet werden können.
  2. Aktualisierter SHA-Algorithmus
  3. Neues Format für Zugriffszertifikate, das nun den Namen des Zertifikatsausstellers enthält
  4. Andere Fehlerkorrekturen und Verbesserungen

Android SDK Version 1.1.14

Das Android SDK ist von nun an über das JCenter verfügbar und kann direkt als Gradle-Kopplung heruntergeladen werden. In diesem Zusammenhang wurde das SDK in einzelne Module aufgeteilt: HMKit-Android, HMKit-AutoAPI, HMKit-Crypto und HMKit-Utils. Die Auto-API-Bibliothek wurde auf Level 6 aktualisiert und ist auf GitHub als Open Source verfügbar.

iOS SDK Version 2.0.4

Das iOS SDK wurde aktualisiert, um die neuesten Kernänderungen zu unterstützen. Die Auto-API-Bibliothek wurde auf Level 6 aktualisiert und ist auf GitHub als Open-Source verfügbar.

Node.js Version 0.4.0

Das Node.js SDK wurde aktualisiert, um Auto-API Level 6 und andere grundlegende Änderungen zu unterstützen.

REST Auto-API erste Version 1.0

Dies ist eine völlig neue Schnittstelle für die Arbeit mit der Auto-API. Mit der REST-API ist es möglich, mit Autodaten und APIs auf jeder Plattform zu arbeiten.

Ältere Veröffentlichungen

Node.js SDK Version 0.3.0

Gute Nachrichten für Windows-Benutzer! Diese Version enthält Unterstützung für Windows 10. Holen Sie sich einfach die neueste Version von NPM oder laden Sie die Beispielanwendung herunter.

Android SDK Version 1.0.6

Dies ist nur ein kleines Update mit einer Fehlerbehebung für die AccessCertificate.isExpired()-Methode.

Ältere Veröffentlichungen

iOS SDK Version 1.8.5 Beta für Swift 4

Dies ist eine größere Aktualisierung, um mit Apples Update auf iOS 11 kompatibel zu sein. Mit dieser Version fügen wir ein Swift 4 (Beta) SDK zusätzlich zur stabilen Version 1.8.5 auf der Download-Seite hinzu. In den kommenden Monaten werden wir jedoch den Swift 3-Build auslaufen lassen.

Auto Emulator Version 1.5.0

Diese Version enthält eine Fehlerbehebung und eine Verbesserung:

  1. Die Funktion "Müdigkeit des Fahrers" wurde um eine Schaltfläche "Broadcast" erweitert.
  2. Standardwert für den Füllstand der Waschflüssigkeit jetzt gültig

Ältere Veröffentlichungen

Node.js SDK Version 0.2.0

Diese Version enthält Hilfsfunktionen zum Senden und Parsen aller verbleibenden Auto-API-Befehle, die nicht in der ersten Version enthalten waren - mit Ausnahme von "Get Capabilities" und " Get Vehicle Status". Wir arbeiten immer noch hart an der Windows-Unterstützung, machen aber gute Fortschritte.

Die Beispielanwendung für das Gerüst wurde ebenfalls aktualisiert, um die neueste Version bestmöglich widerzuspiegeln.

Als nächstes stehen eine informativere Fehlerbehandlung und die letzten beiden Auto-API-Befehle auf dem Programm.

Ältere Veröffentlichungen

iOS SDK Version 1.8.5

Ab dieser Version wird das iOS SDK mit einem Skript AppStoreCompatible.sh ausgeliefert, das vor der Freigabe im App Store verwendet werden sollte. Das Skript entfernt iPhone-Simulator-bezogenen Code.

Weitere Aktualisierungen und Fehlerbehebungen:

  1. Korrektur der URL-Konvertierung für den Befehl Auto-API Load URL
  2. "HonkHorns" Auto-API umbenannt in nur "HonkHorn" ohne Pluralform

Ältere Veröffentlichungen

Android SDK Version 1.0.5

Das sind die Neuerungen dieser Version:

  1. Parsing-Fehlerbehebung für umgekehrte Position/Verriegelungsstatus der hinteren Tür

Eine zusätzliche App "Basic OAuth" wurde zu den Beispielen hinzugefügt.

Auto-Emulator, Version 1.4.2

Diese Version enthält die folgenden Fehlerkorrekturen:

  1. Fahrzeugstandort wird über Bluetooth übertragen, wenn er auf der Karte geändert wird
  2. Umgekehrter Text für Motor ein/aus im Protokoll korrigiert
  3. Start- und Enddatum des Zugriffszertifikats richtig validiert
  4. Browser: Der Befehl URL laden wird ausgeführt, auch wenn HTTP verwendet wird, mit entsprechender Fehlermeldung
  5. OAuth-Dialog enthält jetzt formatierte Daten

Ältere Veröffentlichungen

Node.js experimentelles SDK Version 0.1.1

Dies ist die erste Version von HMKit für Node.js und das erste SDK, das für Backend-Server-Anwendungen bestimmt ist. Das SDK unterstützt die Arbeit mit der Auto API durch Telematik.

Bei der ersten experimentellen Version gibt es zwei größere Einschränkungen. Erstens kann sie nur unter Linux und OS X ausgeführt werden. Windows-Unterstützung wird in kommenden Versionen folgen. Dies ist auf die nativen C-Bindungen zurückzuführen, die für die Verschlüsselung und das interne Protokoll verwendet werden.

Die Version 0.1.1 verfügt noch nicht über Hilfsmethoden für alle Auto-APIs. Für die folgenden Fuktionen sind Hilfsmethoden enthalten:

  1. Türschlösser
  2. Motor
  3. Trunk-Zugang
  4. Diagnose
  5. Browser

Alle Rückmeldungen zu den öffentlichen Methoden, insbesondere zur Handhabung der Auto-API, werden in den nächsten Versionen berücksichtigt.

Ältere Veröffentlichungen

Auto-Emulator, Version 1.4.0

Diese Version enthält zwei große Aktualisierungen, Auto-API-Funktionen Browser und Grafiken wurden hinzugefügt. Andere Änderungen:

  1. Eingestellte Ladegrenze richtig geparst und behandelt
  2. Öffnen/Schließen von Fenstern wird korrekt analysiert und behandelt
  3. Telematik-Befehle werden nicht mehr unterbrochen für: Hupen & Blinken, Notfallblinker, Nachricht erhalten, Videoübergabe, Texteingabe, (Navi-)Ziel setzen, Fenster öffnen/schließen, Gasklappe öffnen
  4. App-Name zum Geräte-Infobereich hinzugefügt

iOS SDK Version 1.8.4

Das sind die Neuerungen in dieser iOS SDK-Version:

  1. Handhabung und Parsing für die Auto-API-Funktionen Browser und Grafik hinzugefügt
  2. Parsing-Korrekturen für die Befehle Notifications und Diagnostics
  3. Struktur zur besseren Handhabung von Windows-Befehlen hinzugefügt
  4. link.sendCommand-Abschlussblock-Argument entfernt, ist jetzt optional und kann einen Fehler auslösen
  5. LocalDevice Singleton umbenannt, das alte kann vorerst weiter verwendet werden

Android SDK Version 1.0.4

Das sind die Neuerungen in dieser Android SDK-Version:

  1. Handhabung und Parsing für die Auto-API-Funktionen Browser und Grafik hinzugefügt
  2. Bluetooth wird nicht mehr in der Initialisierungsmethode eingerichtet, was die Verwendung des SDK im Android-Simulator ermöglicht
  3. Behandlung von leeren Antworten für Telematikbefehle
  4. Parsing-Korrekturen für den Befehl Navi-Ziel senden