iOS SDK - Preference Module
DOCS
Last updated: Sept 19th, 8:07pm
Use the endpoints of this module to retrieve the issuer's configurations for default app behavior.
Initialize Preference Facade
Prior to invoking any preference module endpoints:
- Create a new request object for the relevant coordinator.
- Implement the delegate for the coordinator to handle responses.
1iphone_reference_appAppDelegate *appDelegate = (iphone_reference_appAppDelegate *)[[UIApplication sharedApplication]delegate];2[preferenceCoordinator preferenceDelegate:self]; self.preferenceCoordinator = preferenceCoordinator; preferenceCoordinator.preferenceDelegate = self;
retrievePreferenceDetails
Retrieves the app configurations defined by the issuer.
Element | Value |
---|---|
Method Signature | -(void)retrievePreferenceDetails; |
Success Returns | -(void) didFinishRetrievingPreferenceInformation:( PDPreference *)preference; preference - Contains the issuer preference property settings. |
Failure Returns | preferenceInformationInvocationDidFail( PDPaydiantError *)preferenceError; The call was unable to reach the host. retrievingPreferenceInformationDidFail:(PDPaydiantError *)preferenceError; - The configuration settings could not be retrieved.authenticationDidFail:(PDPaydiantError *)authenticationFailedError; The user must be logged in to make this call. |
Note: This method returns different delegate methods for relevant failure conditions.
Configure user error messages for this call with the key kUserErrorPreferenceInfoDomain
.
Best Practices
At this time, the only configuration value returned in this call is sessionTimeout
, which represents the issuer's specification for the maximum number of minutes allowed for a single login session. If the app allows the user to explicitly override the issuer's default value for this property, consider the following best practices:
- Do not allow the user to exceed the
sessionTimeout
value set by the issuer. The issuer setting represents the maximum login allowed, so the session will expire at this time even if the user has specified a longer limit. - If the user sets a
sessionTimeout
that is shorter than the default, the app must invoke theLogout
method upon expiration of the user's timeout and revert to the Login screen of the app to login. Otherwise, the session will remain active until the issuer-configured expiration is triggered.