Build Your Mobile Development Kit Client Using Cloud Build Service
Build a standard or a customized mobile development kit client using cloud build service and connect to your SAP mobile app.
Overview
You will learn
- How to generate platform specific configurations required for your MDK client
- How to build a standard MDK client
- How to upload your local
.mdkprojectto the Cloud Build service to build a customized MDK client - How to install the binary on your device
Prerequisites
Prerequisites
- Tutorial: Set Up Initial Configuration for an MDK App
- Apple ID: A paid Apple developer account is required
Steps
Intro
Cloud Build Service provides 2 options for creating a mobile development kit client:
- Create a standard MDK client by providing your own app icon and app logo.
- Create a customized MDK client by importing your local
.mdkprojectsimilar to what you might have done via MDK SDK locally on your machine.
You need to:
- Add Cloud Build service feature to your MDK app configuration
- Upload signing profiles and/or app information
- Upload your local
.mdkproject(applies for custom MDK client) - Initiate the build
After a successful build, you can download the APK or IPA file.
Make sure you are choosing the right device platform tab above.
This step is required only if you will be using Push notification in your Android MDK client. If not using the Push, proceed to next step.
Open the Firebase console, login with your Google account and click Create a new Firebase Project.

MDK Provide a Project Name, click Continue.

MDK Uncheck Enable Gemini in Firebase option and click Continue.

MDK Uncheck Enable Google Analytics for this project option and click Create Project.

MDK Once the project is ready, click Continue.

MDK Click Add app and click Android icon to add Firebase to your Android app.

MDK Provide a unique name to Android package name, click Register app.

MDK Download
google-services.jsonfile, click Next.
MDK In Add Firebase SDK step, click Next.
In the following step, click Next and then click Continue to console.

MDK
In order to implement Push Notifications, a paid Apple developer account is required. Students or other developers with a personal Apple ID for their team will not be able to use push notifications, because they will not have access to the Developer Portal to generate the required certificate.
To enable your app for push notifications, you need to carry out the following tasks:
- Obtain a certificate signing request
- Create a new development certificate
.cerfile - Install the
.cerfile and create the .p12 file - Register an iOS App ID
- Register your device
- Create a development provisioning profile
Obtain a certificate signing request
In order to use the Apple Push Notification service, you need to create a CSR file.
On your Mac, open the Keychain Access application, and navigate to Keychain Access > Certificate Assistant > Request a Certificate From a Certificate Authority…

MDK In the dialog, enter the email address which is associated with your Apple Developer account. Also, make sure you check the Request is saved to disk option.

MDK Click Continue.
Choose a folder to store the certificate – it is good practice to store generated files in a separate folder for each project – and click Save.
Once you see a dialog saying the certificate is saved successfully, click Done to finish.

MDK Create a new development certificate
.cerfileGo to your Apple Developer Account and Click Certificates.

MDK Click + icon to create a Certificate for your app.

MDK Select Apple Development and click Continue.

MDK Click Choose File and browse to the downloaded Signing Request
CSRfile, click Continue.Apple will now create a
.cerfile for you which is issued by the Apple Worldwide Developer Relations Certification Authority.
MDK Click Download to download your certificate.

MDK Install the
.cerfile and create the .p12 fileIn order to create a signing profile on SAP Mobile Services, you need to install the
.cerfile and create the needed.p12file.A
.p12file is a encrypted container for the certificate and private key. This file is needed by Mobile Services for creating a signing profile.Locate your downloaded
.cerfile and double-click it in order to install the certificate.In case the Add Certificate dialog pops up make sure to choose Login from the dropdown and click Add.
If the certificate is added correctly to the Keychain you should see it in the
MyCertificatessection, make sure you selected login as keychain.
MDK Select the certificate as well as the private key and right-click to export those 2 items.

MDK Make sure that in the dropdown Personal Information Exchange (.p12) is selected and click Save. You will be prompted to enter a password, click OK to export the files.

MDK Register an iOS App ID
Click + icon to register a unique Identifiers for your app.

MDK Select App IDs and click Continue.

MDK Provide a unique Bundle ID name, Description and click Continue.

MDK In the following screen, select option for Deployment Details and then click Continue.
Confirm your App ID by clicking on Register.
Register your device
Click + icon to register your iOS device.

MDK Provide Device Name & Device ID (UDID) and then click Continue.

MDK Create a development provisioning profile
Click + icon to create a development provisioning profile.

MDK Select iOS App Development to create a provisioning profile to install development apps on test devices and click Continue.

MDK Select an App ID from the dropdown list and click Continue.

MDK Select the required certificate to include in this provisioning profile and click Continue.

MDK Select the device to include in this provisioning profile and click Continue.

MDK Provide a unique name to the profile and click Generate.

MDK In next step, download the generated provisioning profile on your local machine.

MDK
If you haven’t created your local .mdkproject, have a look at step 3 from Build Your mobile development kit Client Using MDK SDK tutorial.
Compress your .mdkproject folder, the resulting zip file will be used to create a build job for a customized mobile development kit client in Mobile Services admin UI.
Make sure you are choosing the right device platform tab above.
Open the SAP Mobile Services admin UI and navigate to Settings | Cloud Build. Initialize the Cloud Build Settings if not done before.
You have an option to generate a new signing profile in the Mobile Services admin UI by providing mandatory info like Profile Name, Validity, Common Name (user name). Other information are optional.

MDK Or you have an option to to upload an Android Signing profile, if you already have one.

MDK
Open the SAP Mobile Services admin UI and navigate to Settings | Cloud Build. Initialise the Cloud Build Settings if not done before.
Click Upload to upload iOS Signing profile and provide below information:
Property Value PlatformsiOSProfile Nameprovide a name of your choiceSigning CertificateBrowse to .p12 certificatePrivate Key PassphraseEnter the password that you chose while exporting .p12 certificateprovisioning ProfileBrowse to .mobileprovision fileClick OK.

MDK
You can find more details about Cloud Build service in help documentation.
Make sure you are choosing the right tab above to build a MDK client as per your requirement.
Navigate to Mobile Applications โ Native/MDK โ
myapp.mdk.demoโ Cloud Build.If you do not see Cloud Build feature in the Assigned Features list, click the + icon to add it.
Click Create Build Job to build your first build job.

MDK In the Basic Information step, select mobile development kit Client from Client Type dropdown.

MDK Provide required values and click Next.

MDK Bundle ID (iOS)/ Package Name (Android) is a unique app identifier used to sign mobile development kit clients. For iOS, make sure to provide the same bundle ID while registering an iOS App ID in step 1.
In the Platform step, provide a unique value to the URL Scheme.
If you have a Firebase configuration for your client, browse to select the
google-services.jsonfile and click Next.
MDK Google Services JSON File: The Firebase Android configuration file associated with your app in your Firebase project.
For Android builds: The packaging format to use for the build, including APK (Android Package Kit, the default) or AAB (Android App Bundle). Since Google requires applications uploaded to the Google Play Store be built in the AAB format, select this option if that is your plan. To install an AAB binary without using Google Play Store, you must download the AAB and use Google’s
bundletoolto extract an install-ready binary from the AAB and to install that binary. Refer to their documentation onbundletoolfor more details.In the Multimedia step, you may upload an image to use for the app logo and click Next.

MDK In the Build Options step, select respective Signing profile(s), set minimum platform version, select a supported SDK version and click Finish.

MDK The default version is always recommended (it will vary over time), but you can select an older SDK version.
Click Build to start the Build job.

MDK After few minutes, Build should be completed. You can select each cloud build history row to view its current state, install, and download binaries.

MDK You can find more details about packaging details in help documentation.
In Mobile Services admin UI, navigate to Mobile Applications โ Native/MDK โ
myapp.mdk.demoโ Cloud Build.If you do not see Cloud Build feature in the Assigned Features list, click the + icon to add it.
Click Create Build Job to build your first build job.

MDK In the Basic Information step, select Customized mobile development kit Client from Client Type dropdown.

MDK The build includes functionality to run customized extensions, application resources, and onboarding, and to include demo mode in your application.
Browse to your compressed MDK project as previously created.

MDK Upon upload, Cloud Build service starts validating the ZIP file. If the ZIP file doesn’t conform to the
.mdkprojectstructure, you may see build failures. Check the documentation for more details.Once validation is successful, you will notice the values like Device App Name, Device App Display Name, Device App Version, Device App Details, Bundle ID, and Encrypt Database have been auto-filled/selected. These values were provided in your
MDKProject.jsonandBrandedSettings.jsonas part of your local.mdkproject.
MDK Click Next.
In the Platform step, URL Scheme has been retrieved from the MDKProject.json. Click Next.
If you have a Firebase configuration for your client, browse to select the
google-services.jsonfile and click Next.
MDK Google Services JSON File: The Firebase Android configuration file associated with your app in your Firebase project. If the google-services.json is available in the uploaded ZIP file, you will see option Show Contents to view the contents of the JSON file. If it is not the right file, click Remove File and then you can upload a new google-services.json file to override it.
For Android builds: The packaging format to use for the build, including APK (Android Package Kit, the default) or AAB (Android App Bundle). Since Google requires applications uploaded to the Google Play Store be built in the AAB format, select this option if that is your plan. To install an AAB binary without using Google Play Store, you must download the AAB and use Google’s
bundletoolto extract an install-ready binary from the AAB and to install that binary. Refer to their documentation onbundletoolfor more details.In the Multimedia step, you may upload an image to use for the app logo and click Next.

MDK In the Build Options step, select respective Signing profile(s), set minimum platform version, select a supported SDK version and click Finish.

MDK The default version is always recommended (it will vary over time), but you can select an older SDK version.
Click Build to start the Build job.

MDK After few minutes, Build should be completed. You can select each cloud build history row to view its current state, install, and download binaries.

MDK You can find more details about packaging details in help documentation.
You can install this new custom MDK client app either by scanning QR code from Android phone camera app (click Install) or download binary (APK) locally and install in your device via IDEs like Android Studio or via other means.



You can install this new custom MDK client app either by scanning QR code from iPhone phone camera app (click Install) or download binary (IPA) locally and install in your device via IDEs like Xcode or via other means.



Resources
Discussion
Share feedback on this tutorial or join the conversation in SAP Community.