Skip to content
This repository has been archived by the owner on Jan 16, 2020. It is now read-only.

Speicher210/wingu-ios-sdk-essentials

Repository files navigation

wingu-ios-sdk-essentials

Documentation Platform License Carthage compatible Version

wingu sdk essentials is an iOS SDK for managing triggers configured at wingu. It will range beacons and find geofences already with content attached.

wingu essentials is delivered to you in pre-compiled form .framework. It's written in Swift 4.2.1

Table of Contents

  1. Installation
  1. Requirements
  2. Quick start guide
  3. Documentation
  4. License

Installation

Cocoapods

wingu-ios-sdk-essentials is available through CocoaPods. To install it, add the following line to your Podfile:

pod 'wingu-ios-sdk-essentials'

Carthage

Carthage is a simple, decentralized dependency manager for Cocoa.

Version of library can be downloaded using binary option in Cartfile. Add this line to Cartfile:

binary "https://raw.githubusercontent.com/wingu-GmbH/wingu-ios-sdk-essentials/master/wingu-ios-sdk-essentials.json"

Manual Installation

Copy winguSDKEssential.framework file from this repository to your project.

Requirements

There is a location permission needed to run an app and work with wingu channels. Add this keys into your Info.plist file:

NSLocationAlwaysAndWhenInUseUsageDescription
NSLocationWhenInUseUsageDescription

Quick start guide

This guide shows you how get triggers callbacks with default configuration. You can always have some custom parameters in scanners. For all available configuration please check our full documentation. Depends on a use case you may need winguLocations in only one model or in whole app.

We recommend create a one instance of winguLocations:

lazy var wingu: WinguLocations = {
    let wingu: WinguLocations = WinguLocations(configuration: WinguConfiguration.defaultConfiguration)
    wingu.delegate = self
    return wingu
}()

Your class should conform to protocol WinguLocationsDelegate and there you will receive all delegate callbacks from wingu triggers

extension YourClass: WinguLocationsDelegate { 
	func winguChannels(_ channels: [Channel]) {
    	// your code here
	}
}

WinguLocationsDelegate requires only one method implemented to get triggers, but you can check full documentation. This required callback is:

Channel is default class for all wingu triggers. This method will return available list of channels in range and will also get called whenever some trigger are out of range or scanner found a new one.

You can start ranging beacons by calling

wingu.start()

See example project to learn more.

The quickest way to get started is to use above code in your project. Demo apiKey is already there. If you want to start receiving geofences just select San Francisco, CA, USA from predefined locations in Xcode and you'll get content attached to default configuration.

alt text

Documentation

Documentation is available here or through your IDE.

License

wingu-ios-sdk-essentials is available under the Apache-2.0 license. See the LICENSE file for more info.