Upgrade instructions for older versions
Instructions to upgrade iOS SDK version to 6.x
When upgrading from a version 5.x SDK to version 6.x, several changes have to be applied in your application.
Note: Starting from this version we removed the leading zeros from our versioning scheme. So the SDK uses the standard
major.minor.patch
versioning scheme.
Removed API's
ONGUserClient
enrollForMobileAuthentication:
andstoreDevicePushTokenInSession:
==> removed in favour forenrollForMobileAuth:
andenrollForPushMobileAuthWithDeviceToken:completion
. You can now enroll for mobile authentication without enrolling for push mobile authentication. Enrollment for push requires enrollment for mobile authentication to be done first.ONGMobileAuthEnrollmentErrorMissingDevicePushToken
==> the error is no longer returnedONGPublicCommons
- file removedONGSDKInitializationException
==> removed in favour forNSInternalInconsistencyException
isEnrolledForMobileAuth
==>isUserEnrolledForMobileAuth:
isEnrolledForPushMobileAuth
==>isUserEnrolledForPushMobileAuth:
Removed deprecated API's
ONGUserClient
handleApplicationURL:
==>respondWithURL:challenge:
method ofid<ONGRegistrationRequestChallengeSender>
object provided by theONGRegistrationRequestChallenge
Registration redirect URL can now be passed to the sdk usingid<ONGRegistrationRequestChallengeSender>
, which makeshandleApplicationURL:
obsolete.ONGRegistrationDelegate
userClient:didReceiveRegistrationRequestWithUrl:
==>userClient:didReceiveRegistrationRequestChallenge:
The URL is passed within theONGRegistrationRequestChallenge
object. It also provides a sender object used to respond with the redirect URL or to cancel the registration.ONGClientBuilder
setUseEmbeddedWebView
==> No longer required. The Onegini SDK no longer distinguishes how the registration request URL is handled.ONGPublicCommons
ONGCloseWebViewNotification
==> No longer required. Called only ifsetUseEmbeddedWebView
was set toYES
. The Onegini SDK no longer distinguishes how the registration request URL is handled. If the registration request URL was handled within a UIWebView, it could be closed as soon as you send a response to theONGRegistrationRequestChallengeSender
or when you receive theuserClient:didReceivePinRegistrationChallenge:
on yourONGRegistrationDelegate
.
Renamed API's
ONGUserClient
handleMobileAuthenticationRequest:delegate
==>handlePushMobileAuthRequest:delegate:
canHandleMobileAuthenticationRequest
==>canHandlePushMobileAuthRequest
ONGMobileAuthenticationRequest
==>ONGMobileAuthRequest
ONGMobileAuthenticationRequestDelegate
==>ONGMobileAuthRequestDelegate
didFailToHandleMobileAuthenticationRequest
==>didFailToHandleMobileAuthRequest
didHandleMobileAuthenticationRequest
==>didHandleMobileAuthRequest
ONGMobileAuthenticationEnrollmentErrorDomain
==>ONGMobileAuthEnrollmentErrorDomain
ONGMobileAuthenticationEnrollmentErrorUserNotAuthenticated
==>ONGMobileAuthEnrollmentErrorUserNotAuthenticated
ONGMobileAuthenticationEnrollmentErrorDeviceAlreadyEnrolled
==>ONGMobileAuthEnrollmentErrorDeviceAlreadyEnrolled
ONGMobileAuthenticationEnrollmentErrorEnrollmentNotAvailable
==>ONGMobileAuthEnrollmentErrorEnrollmentNotAvailable
ONGMobileAuthenticationEnrollmentErrorUserAlreadyEnrolled
==>ONGMobileAuthEnrollmentErrorUserAlreadyEnrolled
ONGMobileAuthenticationEnrollmentErrorMissingDevicePushToken
==>ONGMobileAuthEnrollmentErrorMissingDevicePushToken
ONGMobileAuthenticationEnrollmentErrorNotEnrolled
==>ONGMobileAuthEnrollmentErrorNotEnrolled
ONGMobileAuthenticationRequestErrorDomain
==>ONGMobileAuthRequestErrorDomain
ONGMobileAuthenticationRequestErrorNotFound
==>ONGMobileAuthRequestErrorNotFound
ONGMobileAuthenticationRequestErrorUserDisenrolled
==>ONGMobileAuthRequestErrorUserDisenrolled
Renamed errors
ONGSDKInitialisationErrorDeviceRegistrationFailed
==>ONGGenericErrorDeviceRegistrationFailure
ONGRegistrationErrorDeviceRegistrationFailure
==>ONGGenericErrorDeviceRegistrationFailure
Removed error domains
ONGSDKInitializationErrorDomain
The Initialization error domain is removed since it didn't contain any errors anymore after renaming & moving theONGSDKInitialisationErrorDeviceRegistrationFailed
error to theONGGenericErrorDomain
.
Instructions to upgrade iOS SDK version to 5.02
When upgrading from an older SDK version to version 5.02, several changes have to be applied in your application.
Although it is still possible to use the old API's we recommend to update to the new API's since the old ones will be removed in the next big update of the SDK.
Deprecated API's
ONGUserClient
handleApplicationURL:
==>respondWithURL:challenge:
method ofid<ONGRegistrationRequestChallengeSender>
object provided by theONGRegistrationRequestChallenge
Registration redirect URL can now be passed to the sdk usingid<ONGRegistrationRequestChallengeSender>
, which makeshandleApplicationURL:
obsolete.
ONGRegistrationDelegate
userClient:didReceiveRegistrationRequestWithUrl:
==>userClient:didReceiveRegistrationRequestChallenge:
The URL is passed withinONGRegistrationRequestChallenge
object. It also provides sender object used to respond with redirect URL or to cancel registration.
ONGClientBuilder
setUseEmbeddedWebView
==> No longer required.
Onegini SDK no longer distinguishes how registration request URL is handled.
ONGPublicCommons
ONGCloseWebViewNotification
==> No longer required. Called only ifsetUseEmbeddedWebView
was set toYES
.
Onegini SDK no longer distinguishes how registration request URL is handled. If registration request URL was handled by within UIWebView, it could be closed as soon as you send response to ONGRegistrationRequestChallengeSender or when you receive userClient:didReceivePinRegistrationChallenge: on your ONGRegistrationDelegate.
Instructions to upgrade iOS SDK version to 4.10
When upgrading from an older SDK version to version 4.10, several changes have to be applied in your application:
Although it is still possible to use the old API's we recommend to update to the new API's since the old ones will be removed in the next big update of the SDK.
Also the multiple profiles feature is not available when your app still uses the old API's.
Deprecated API's
OGOneginiClient
authorize
==>registerUser:delegate:
andauthenticateUser:delegate:
.
The authorize method had a dual responsibility: registering users and authenticating users. It has been split up into two methods:registerUser:delegate:
andauthenticateUser:delegate:
. Use the first method in case you want to let a new user register his account in the application. After registration you must useauthenticateUser:delegate:
to authenticate the user. OnlyregisterUser:delegate:
will interact with a browser.reauthorize:
==>reauthenticateUser:delegate:
authorizeClient:
==>authenticateClient:delegate:
confirmCurrentPin:
==>confirmPin:
in theOGPinConfirmation
protocol.
Delegating control from the SDK to the app regarding the PIN has been changed to make it more clear that it is part of the authentication process. Therefore the SDK will call theaskForCurrentPinForUser:pinConfirmation:
method on theOGAuthenticationDelegate
implementation. In response to theaskForCurrentPinForUser:pinConfirmation:
method which contains a delegate on whichconfirmPin
must be called. TheOGAuthenticationDelegate
is the delegate that needs to be passed when callingauthenticateUser:delegate:
. Please look at the user authentication topic guide for more information regarding this topic.confirmNewPin:
==>confirmPin:
in theOGPinConfirmation
protocol.
Delegating control from the SDK to the app regarding the PIN has been changed to make it more clear that it is part of the registration process. Therefore the SDK will call theaskForNewPin:user:pinConfirmation:
method on theOGAuthenticationDelegate
implementation. In response to thechangePinRequest:
method which contains a delegate on whichconfirmPin
must be called. TheOGAuthenticationDelegate
is the delegate that needs to be passed when callingregisterUser:delegate:
. Please look at the user authentication topic guide for more information regarding this topic.confirmCurrentPinForChangeRequest:
==>confirmPin:
in theOGPinConfirmation
protocol
Delegating control from the SDK to the app regarding the PIN change functionality has been changed to make it more clear that it is part of the change PIN process. Therefore the SDK will call theaskCurrentPinForChangeRequestForUser:pinConfirmation:
method on theOGChangePinDelegate
implementation. In response to theaskCurrentPinForChangeRequestForUser:pinConfirmation:
which contains a delegate on whichconfirmPin
must be called. TheOGChangePinDelegate
is the delegate that needs to be passed when callingchangePinRequest:
.confirmNewPinForChangeRequest:
==>confirmPin:
in theOGPinConfirmation
protocol
Delegating control from the SDK to the app regarding the PIN change functionality has been changed to make it more clear that it is part of the change PIN process. Therefore the SDK will call theaskNewPinForChangeRequest:pinConfirmation:
method of theOGChangePinDelegate
implementation. In response to theaskNewPinForChangeRequest:pinConfirmation:
which contains a delegate on whichconfirmPin
must be called. TheOGChangePinDelegate
is the delegate that needs to be passed when callingchangePinRequest:
.confirmCurrentPinForFingerprintAuthorization:
==>confirmPin:
in theOGPinConfirmation
protocol
Delegating control from the SDK to the app regarding the fingerprint enrollment functionality has been changed to make it more clear that it is part of the fingerprint enrollment process. Therefore the SDK will call theaskCurrentPinForFingerprintEnrollmentForUser:pinConfirmation:
method on theOGFingerprintDelegate
implementation. In response to theaskCurrentPinForFingerprintEnrollmentForUser:pinConfirmation:
which contains a delegate on whichconfirmPin
must be called. TheOGFingerprintDelegate
is the delegate that needs to be passed when callingenrollForFingerprintAuthenticationWithDelegate:
.handleAuthorizationCallback:
==>handleAuthenticationCallback:
Fetching resources
New methods have been introduced to fetch resources. The scopes attribute is no longer required in any of thefetchResource
methods. Please follow the topic guide about fetching resources to update your implementation to the latest methodslogoutWithDelegate:
==>logoutUserWithDelegate:
enrollForMobileAuthentication:delegate:
==>enrollUserForMobileAuthenticationWithDelegate:
For more information regarding theenrollUserForMobileAuthenticationWithDelegate:
method implementation see the mobile authentication topic guide.enrollForFingerprintAuthentication:delegate:
==>enrollForFingerprintAuthenticationWithDelegate:
For more information regarding theenrollForFingerprintAuthenticationWithDelegate:
method implementation see the biometric authentication topic guide.unenrollForFingerprintAuthenticationWithDelegate:
==>disableFingerprintAuthentication
disconnectWithDelegate:
==>deregisterUser:delegate:
For more information regarding thederegisterUser:delegate:
method implementation see the user authentication topic guide.**
isClientRegistered
==>userProfiles
In order to check whether a user is registered use theuserProfiles
method to get the profiles that are registered on this device.
OGEnrollmentHandlerDelegate
enrollmentInvalidClientCredentials
==>enrollmentErrorDeviceDeregistered
OGFingerprintDelegate
askCurrentPinForFingerprintAuthentication
==>askCurrentPinForFingerprintEnrollmentForUser:pinConfirmation:
fingerprintAuthenticationEnrollmentErrorTooManyPinFailures
==>fingerprintAuthenticationEnrollmentErrorUserDeregistered
OGResourceHandlerDelegate
resourceSuccess:
==>resourceResponse:body:requestId:
We no longer distinguish between resource success or failure but always call theresourceResponse:body:requestId:
method.**
resourceError
==>resourceResponse:body:requestId:
We no longer distinguish between resource success or failure but always call theresourceResponse
method.