AutoAPI

13.2.0

📱 AutoAPI Swift lib - the parsing library for the Auto API vehicle data model
highmobility/auto-api-swift

What's New

Level 13.2 minor update

2023-02-22T14:11:22Z

This update adds additional datapoints to the existing Level 13 - only an additive update.
More info and the changelog can be seen here.

AutoAPI Swift SDK

Auto API The AutoAPI Swift SDK purpose is to help developers serialise AutoAPI data in Swift, so they wouldn't have to worry about parsing and generating the bytes themselves. The SDK is generated based on the AutoAPI spec.

Table of contents

Features

Serialising: The library is designed to serialise AutoAPI data to and from Swift types.

Support for Updates: Updates to the AutoAPI spec (non-binary) will work with older versions of the library and the new types of data are accessible.

Integration

The library is distributed as a Swift Package, allowing it to be used with Xcode's built-in SPM or directly in a Package.swift.

For using the package through Xcode, it can be added in File > Swift Packages > ... or going to project settings and selecting Swift Packages in the top-center.
When targeting a Swift package, the Package.swift file must include .package(url: "https://github.com/highmobility/auto-api-swift", .upToNextMinor(from: "[__version__]")), under dependencies.

Requirements

AutoAPI Swift SDK requires Xcode 11.0 or later and is compatible with apps targeting iOS 10.0 or above.

Getting started

Get started by reading the iOS AutoAPI guide in high-mobility.com.

Check out the spec for more details on the structure and logic, or some other libs generatated on that spec: Android, Elixir.

Examples

There are 3 sample apps available on Github.com to showcase usage of AutoAPI (and HMKit):

  • Scaffold
    • Demonstrates the most basic usage of AutoAPI.
  • Data Viewer
    • Tries to parse and show the AutoAPI data received from a vehicle. Limited functionality to send commands.
  • AutoAPI Explorer
    • Incorporates all the "abilities" of the previous sample apps along with more commands to send to the vehicle and takes a shot at a nice(r) UI.

Contributing

We would love to accept your patches and contributions to this project. Before getting to work, please first discuss the changes that you wish to make with us via GitHub Issues, Spectrum or Slack.

The generator used to create this lib, based on the AutoAPI spec, will be open-sourced in the near future. Until then, changes to the Swift interface need to go through our private generator. If you'd like to make changes to the AutoAPI, please see here.

Releases are done by tagged commits (as required by SPM, please read more about it here and here).

See more in CONTRIBUTING.md

License

This repository is using MIT license. See more in LICENSE

Description

  • Swift Tools 5.5.0
View More Packages from this Author

Dependencies

Last updated: Wed Mar 13 2024 07:44:59 GMT-0900 (Hawaii-Aleutian Daylight Time)