Swiftpack.co - Package - highmobility/hm-auto-api-swift

What is in this repository

AutoAPI parsing source code in Swift, that can be made into a framework by swift build (macOS and Linux only), or through Xcode. Using the latter allows additionally to build for iOS, tvOS or watchOS.

In addition, if using this as a dependency with Swift Package Manager, the suitable architecture is handled by Xcode.

Lastly, there's a command-line parser for quickly debugging AutoAPI data.

Framework Usage

For iOS, it's recommended to build the universal framework - thus enabling running on a simulator as well.
There's an AppStoreCompatible.sh script for thinning the framework before submission to iTC.

For macOS and Linux, executing swift build and using the product is recommended (use the --show-bin-path option to get the output path).

For other Apple platforms, the universal framework can be made with lipo from Xcode's simulator and device products. When creating a universal one, the module maps need to be copied as well.

For details on the API itself, please see the documentation.

Parser Usage

Simply execute ./AutoAPICLT [input] on the command-line.

Input can be in hex, base64 or "scrambled" (see the flags).
The parser outputs only what it was able to understand.

Flags:
-b64: input is in Base64 instead
-dc: input is like in Developer Center examples
-ep: expand properties

screenshot

Github

link
Stars: 1
Help us keep the lights on

Dependencies

Used By

Total: 0

Releases

10.0.4 - May 2, 2019

Improved parsing speed by 100-1000x

Added AutoAPI Profiler to be able to use Instruments. Renamed AACommandIdentifier to AACapabilityIdentifier. Other minor fixes.

10.0.3 - Apr 5, 2019

Fixed multiple AAItem subtypes.
Fixed other minor issues found through tests.
Removed obsolete files.

7.3.4 - Mar 29, 2019

Updated to Swift 5 Updated HMUtilities to 1.3.x

10.0.2 - Mar 29, 2019

Updated to Swift 5

AANaviDestination, AARace, Chassis' types and General Capabilities fixes.

7.3.3 - Mar 18, 2019

Added multi state response to MultiCommand.