Skip to content

guillaumealgis/SimpleMDM-Swift

Repository files navigation

SimpleMDM-Swift

MIT Build Status Codecov

SwiftPM Compatible CocoaPods Compatible Carthage Compatible

Platform Compatibility Swift Compatibility

SimpleMDM-Swift is a cross-platform (iOS, macOS, tvOS, watchOS) SDK to access the SimpleMDM API written in Swift.

Please Note: This library is not officially supported by SimpleMDM. It does not currently wrap the complete functionality of the SimpleMDM API. Use at your own risk.

Features

  • Read-only access to all exposed resources (Device, App, etc.) of the REST API
  • Supports the pagination API introduced August 15, 2018
  • Type-safe
  • Asynchronous API, relying on async / await
  • High test coverage
  • 100% documented
System requirements
  • Deployment target of iOS 15.0+ / macOS 12+ / tvOS 15+ / watchOS 8+
  • Xcode 13.2+
  • Swift 5.5+

Usage

📘 Full documentation is available here: https://guillaumealgis.github.io/SimpleMDM-Swift/

// Just set this once in your applicationDidBecomeActive method
SimpleMDM.APIKey = "233b7a3058694652ae6f62acfcba8be7"

// Get the device with id 42
Device.get(id: 42) { result in
    switch result {
    case let .failure(error):
        print("Could not get device: \(error)")
    case let .success(device):
        print(device.name)
    }
}

// Get all device groups
DeviceGroup.getAll { result in
    switch result {
    case let .failure(error):
        print("Could not get device groups: \(error)")
    case let .success(deviceGroups):
        print(deviceGroups.map { $0.name })
    }
}

Installation

Swift Package Manager

The Swift Package Manager is a tool for automating the distribution of Swift code and is integrated into the swift compiler and Xcode (starting at version 11).

Adding SimpleMDM-Swift as a dependency is as easy as adding it to the dependencies value of your Package.swift:

dependencies: [
    .package(url: "https://github.com/guillaumealgis/SimpleMDM-Swift.git", .upToNextMajor(from: "0.10.0"))
]

Or you can use Xcode's menu in File > Swift Packages > Add Package Dependency.


CocoaPods

To integrate SimpleMDM-Swift into your Xcode project using CocoaPods, specify it in your Podfile:

source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '12.0'

target '<Your Target Name>' do
    pod 'SimpleMDM-Swift', '~> 0.10.0'
end

Then, run the following command:

$ pod install

Carthage

To integrate SimpleMDM-Swift into your Xcode project using Carthage, specify it in your Cartfile:

github "guillaumealgis/SimpleMDM-Swift" == 0.10.0

Run carthage update to build the framework and drag the built SimpleMDM-Swift.framework into your Xcode project and update your run scripts as appropriate. For additional support, please visit the Carthage documentation.

Apps using SimpleMDM-Swift

I'd love to hear what you have used SimpleMDM-Swift for, if you would like your app displayed here, please send a pull request!

License

SimpleMDM-Swift is released under the MIT license. See LICENSE.md for details.

Related Projects

Contact

Guillaume Algis (@guillaumealgis)

About

Swift bindings for the SimpleMDM API

Topics

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages