This solves multiple issues:
- Possible crashes at startup because the app is already in the process of presenting another modal view. This way the developer can make sure that only one modal view is being presented
- If the app is showing e.g. a login view on startup, it is now not needed to turn off automatic mode and setup the complete auth workflow manually and simply invoke `authenticateInstallation` after the login view is either fully presented (`viewDidLoad` finished) or the user did log in
This helps especially in case of a custom URL scheme, so that
BITAuthenticator doesn't reset the identification token if a URL
is passed in that wasn't meant to parsed by BITAuthenticator.
fixes#70
given the good feedback we got, this is take 2
of the BITAuthenticator interface.
It's simplified, cleaned up and now allows full
control over the authentication process.
Major changes:
* manual mode
Authenticator provides the bits to show the
viewController to identify the user as well as to
trigger validation on behalf of the developer.
* process separation
identification and app-usage-restriction are now
2 completely separated things.
* public identifier
Authenticator now allows the developer to query
parts of the information, e.g. the UDID or the user's
emailaddy once identified
- Only start the updateManager if the installation is authenticated (not yet tested)
- Provide the installation data to the updateManager requests
- Some more documentation
- Authenticator defaults to BITAuthenticatorAuthTypeUDIDProvider and BITAuthenticatorValidationTypeNever
- Reset usage time if installation identification changes (not yet tested)