In iOS 8 the app is not moved to background once the users accepts the iOS install alert button. Without this, the install process doesn't start. So for now we exit the app once that alert disappears.
Important: The iOS dialog offers the user to deny installation, we can't find out which button was tapped, so we assume the user agreed.
iOS Frameworks use an extra `Modules/module.modulemap` file that is used with the `import` statement to get all required information for integration. We simulate this behavior by writing our own file manually. So in apps using Swift the Objective-C bridging header is not required any longer (when using the binary distribution of the framework).
Use `kSecAttrAccessibleAfterFirstUnlockThisDeviceOnly` instead of `kSecAttrAccessibleWhenUnlockedThisDeviceOnly` when storing data into the keychain to allow the data to be also fetched when the app is launched in the background
Notify the developer about the issues by logging a warning to the console when the SDK is initialized more than once or startManager is invoked multiple times
If the `configure` initializers or `startManager` are invoked multiple times, this can cause undefined behaviour and crashes. Hence we simply ignore if they are invoked multiple times.
Resizable iPhone causes modal presentations not to be full screen any longer, so we always should use the views width and never the device-width for the version update data presentation. This also works just fine when build with iOS <= 7.1.x
The warning about `delegate` setting after calling `startManager` being incorrect, should actually only be shown if it was called after it and not before it. Doh.
iOS Frameworks use an extra `Modules/module.modulemap` file that is used with the `import` statement to get all required information for integration. We simulate this behavior by writing our own file manually. So in apps using Swift the Objective-C bridging header is not required any longer (when using the binary distribution of the framework).
Use `kSecAttrAccessibleAfterFirstUnlockThisDeviceOnly` instead of `kSecAttrAccessibleWhenUnlockedThisDeviceOnly` when storing data into the keychain to allow the data to be also fetched when the app is launched in the background
Notify the developer about the issues by logging a warning to the console when the SDK is initialized more than once or startManager is invoked multiple times
If the `configure` initializers or `startManager` are invoked multiple times, this can cause undefined behaviour and crashes. Hence we simply ignore if they are invoked multiple times.
Resizable iPhone causes modal presentations not to be full screen any longer, so we always should use the views width and never the device-width for the version update data presentation. This also works just fine when build with iOS <= 7.1.x
Previously self.userInteractionEnabled defaulted to YES, and this
caused plenty of bugs for me when text nodes would silently steal
touches. It should default to NO, and callers who want tappability on
their text nodes should manually set .userInteractionEnabled to YES.