The Webtrekk SDK allows you to track user activities, screen flow and media usage for an App. All data is send to the Webtrekk tracking system for further analysis.
Plattform | Version |
---|---|
iOS |
8.0+ |
tvOS |
9.0+ |
watchOs |
2.0+ |
Xcode 7.3+ and Swift 2.2 for versions below and equal to 4.0.1
Xcode 8.0+ and Swift 3.0 starting with version 4.1.0
Xcode 8.3+ and Swift 3.1 starting with version 4.5.1
Starting with version 4.7.0 library can be included and compiled with XCode 9.0 beta6.
Xcode 9.0+ and Swift 4.0 starting with version 4.8.0
Xcode 9.3+ and Swift 4.1 starting with version 4.11.0
Xcode 10+ and Swift 4.2 starting with version 4.12.1 (Uses Legacy Build System
)
Xcode 10.2+ and Swift 4.2 starting with version 4.13.2 (Uses Legacy Build System
)
Xcode 10.2+ and Swift 5 starting with version 4.14.0 (Uses New Build System
)
To resolve when you cannot lint with Cocoapods, use:
pod spec lint --allow-warnings
- File
- Project/Workspace Settings
- Shared Workspace Settings
- Build System ->
Legacy Build System
- Build System ->
- Shared Workspace Settings
- Project/Workspace Settings
There are a few warnings with the new API in Swift 4.2, all will still work. It's just warnings and we will work to make them disappear by the time a new Swift version is out.
tvOS support starting with version 4.2.0 with the following limitation: No screen resolution and automatic network status tracking support.
watchOS support starting with version 4.3.0 with the following limiations:
- No screen resolution and automatic network status tracking support.
- No deep link and campaign support.
Carthage support starting from version 4.6.0
CocoaPods (Podfile):
pod 'Webtrekk'
Carthage (Cartfile):
github "Webtrekk/webtrekk-ios-sdk"
We use Swiftlint from Realm to lint our code. SwiftLint has to be installed on your device.
More info can be found on SwiftLint.
Details about the specific settings for this project can be found in the .swiftlint.yml
file.
We use Travis CI to check the code for inconsistencies and running the linter & tests.
Details about the specific settings for this project can be found in the .travis.yml
file.
The Webtrekk SDK V4 offers the possibility to migrate some stored information to the new SDK. This option is enabled as per default but in case the old data should be neglected and deleted the value of the migratesFromLibraryV3
variable needs to be set to false
before creating the first tracker. The code snippet below shows this case.
WebtrekkTracking.migratesFromLibraryV3 = false
Following properties are part of the migration.
Option | Description |
---|---|
everId |
previously generated everId for the user |
appVersion |
previously stored appVersion used to detect app updates |
optedOut |
previously stored status which is only migrated if not set before |
samplingState |
previously stored samplingState |
unsentRequests |
previously saved unsent requests |
As of iOS 9 Apple is more strictly enforcing the usage of SSL for network connections. Webtrekk highly recommends and offers the usage of a valid serverUrl with SSL support. In case there is a need to circumvent this. The App will need an exception entry within the Info.plist
. Apple's regulations about this are well documented within the iOS Developer Library
For an example app of the functionality in this SDK see: https://github.com/Webtrekk/iOS-SDK-Example-App
See the LICENSE file for license rights and limitations (MIT).