SAP Discovery Service integration in SAP Cloud Platform SDK for iOS
For latest information, please visit SAP Cloud Platform SDK for iOS documentation.
[Updated] : Blog content updated considering latest release of SAP Cloud Platform SDK for iOS 3.0 SP01 Assistant UX (You might have already read my colleague Andreas blog post on what’s new in latest SAP Cloud Platform SDK for iOS 3.0 SP01)
Integration to SAP discovery service has been available since release of SAP Cloud Platform SDK 2.0 SP01
- Provides configuration information necessary for a user without enrolling a devicen mobile device management (MDM).
- enhances the user onboarding process by letting you distribute initial configuration data to mobile apps.
Using SAP Cloud Platform Mobile Services cockpit, you can publish application configurations to the SAP Discovery service
In your SAP Cloud Platform Mobile services trial account, there will be a default provider and domain.
When you create an app using Assistant, you would notice an additional feature “Discovery service” under “Features” step
- In above screenshot, i opted to choose “Create new application” template, hence i had a choice whether to select this option or not.
- If you happen to choose “Sample Application” template, you won’t see such feature screen during Xcode project creation as it is included in sample template by default and related code will be .
- If you happen to choose “Reuse Application” template, you won’t see such feature screen during creation of Xcode project. If application is already published to Discovery service , related code will be added in Xcode project and at runtime, you will see option of on-boarding with E-Mail domain.
- Once you are done with “Finish”, in Mobile service cockpit, you will notice that Application configuration has been published to Discovery Service automatically.
In the Xcode Project (below screenshot, left side), you will notice that, there is no longer ConfigurationProvider.plist
Since i selected Discovery service option, configuration data is published to Cloud Platform. When i will launch app , i would ask to enter email (pre-filled) in the on-boarding screen and the data is pulled online from Cloud Platform.
(If you do not use Discovery service, the Assistant will generate the ConfigurationProvider.plist file , this contains bootstrapping data for the application)
Now , running the application on simulator
I will have username+email domain already pre-filled on the screen.
Once you click on “Start” , configuration data will get downloaded from Discovery Service, followed by on-boarding flow.
1. To retrieve the configured data, you can perform an HTTPS GET request to the following URL
Here: com.sap.TestApp > AppID in Mobile service cockpit
firstname.lastname@example.org > username+email-domain
2. Application running on the device must be integreated using the Mobile service for Development and Operations – Discovery Service in order for end-to-end process to function.
3. Above flow was for using default application configuration. You can also configure parameters either by selecting
- Custom Properties : to add key value pairs to the application configuration
- Custom JSON : to customize the generated JSON code.
4. If you want to use your own domains, you will need to register them first. The domain registration process requires verification of domain ownership by your organization.
Check below resources for more information:
Product Management, SAP Cloud Platform User Experience