Sandbox release disclaimer: Some content in this article outlines how to use functionalities that will be publicly released to all clients at the end of April 2026. If you see differences between this article and your platform, check back at that time. Learn more about the release cycle.
Latest available version of the app: 7.5.0
Introduction
This article covers the steps to configure a branded mobile app in the Branded mobile app publisher page of the platform. The settings on this page let you customize the appearance, functionality and capabilities of your Android and iOS branded apps.
- You can save the settings as you go along, and come back and complete them later.
- When you are ready, on this same page you can then generate the builds for your branded mobile apps.
You can create more than one branded app. For those using Extended Enterprise, Docebo recommends creating a specific branded app for each subdomain.
Prerequisites: App ID, Store links and Firebase
Before you begin configuring an app in the Branded mobile app publisher page you should have completed the following steps:
-
Select an ID for your branded mobile app. It is recommended to use reverse
domain notation (for example,
com.docebo.mobile). This will correspond to the packageId for Android, and to the bundleID for iOS. Your ID must be unique and not already present in those stores. Preferably, it should be the same for both stores (though this is not required)
The package name cannot contain the keywords in the list of Java keywords (opens in a new tab). - Select the public name of your mobile app. This will be the same for both the Android and iOS versions of the app. Make sure the name you choose does not already exist in the Google Play store or the Apple App store.
-
For each store, in Google Play Console / App Store Connect go through
the procedure to create the app (you do not need to upload a build yet).
During this process you will be asked to provide your chosen ID, and
the app creation will generate a Store Link such as the following:
https://play.google.com/store/apps/details?id=com.docebo.mobile
https://apps.apple.com/us/app/go-learn/id1362542319
Skip this step if you are not planning to distribute your branded app via these stores.
By creating the apps first in this way you can be sure that the chosen app ID is unique.
Tip: Make a note of your app ID and the Store links, you will need to insert these in subsequent configurations.
Please note: If you plan to distribute your branded app via mobile device management (MDM) or by some other method outside of the Google Play Store or Apple App Store, you can still create the packageID in the Google Play Console and the bundleID in Apple Store Connect. In this case you do not need to create the app listing and you do not require a Store link.
In addition, if you want your mobile app to have push notifications, Google sign-in or Google analytics, you should first complete the steps described in the article Configuring Firebase for branded mobile app.
Tokens
Creating a new branded mobile app requires a token, which you can purchase from your Account Manager. The tokens you buy remain associated with your platform, and you can then use them to create your branded apps.
- You need one token for each branded app: a single token covers both the iOS and Android versions of the app.
- The token is required only when you create a new branded app. You do not need a token to update your app.
- When you press the + button to create a new mobile app the New branded mobile app dialog box will inform you of how many tokens you have available.
- You can delete unwanted apps to free up their tokens
If you publish multiple apps, for example for your extended enterprise subdomains, you will need one token per app.
The branded app publisher page
To access the branded app publisher page, navigate to Admin menu > Theme settings > Branded mobile app publisher.
You will see all your existing mobile apps listed here. For each app, you can view the latest generated iOS and Android builds and quickly check whether they’re up to date with the most recent available version.
Here you can click one of the existing apps to edit or continue its configuration (see Edit or delete a branded app), or click the + Create app button to begin creating a new one.
Create a new branded app
To configure a new branded mobile app:
- Select Admin menu > Theme settings > Branded mobile app publisher.
-
Then in the top-right corner of the page click the + Create app button. In the dialog box, check that you have the necessary token available, then click Create app.
-
In the Create branded app panel that opens, enter the following
information:
-
Platform URL: This is the full web address of the
learning platform your app connects to. It can be a
docebosaasURL or a custom domain, if configured. For extended enterprise, select the URL of the desired client, or its secondary domain if applicable. - App name: The public name that you selected for your app. This is the name that your learners will see, and will be the same for the Android and iOS versions of the app. Make sure that it is a unique name that does not already exist in the Google Play Store or the Apple App Store.
- Operating systems: Set whether you want to create an iOS or Android app, or both.
-
Platform URL: This is the full web address of the
learning platform your app connects to. It can be a
- When you are ready click Create app.
A page will open where you can configure all the settings of your newly-created branded app. This page is divided into three main areas: Branding, Settings, and Security.
You can now begin the configuration of your app. Refer to the chapters on App details, Branding, iOS app settings, Android app settings, Firebase services, Security. You can save your progress at any time by clicking Save changes. Then when you are ready to resume, you can select the app from the Branded mobile app publisher page to continue or change its configuration.
Generate the builds and upload them to the app stores
When you have configured all the settings of your branded mobile app, click Save changes to save your app configurations. Then you are ready to generate the builds.
- If you have configured both an iOS and Android version of your app, you will be able to select whether to generate a build for only one of them, or for both.
- If you have configured Direct updates for your iOS or Android app, you will be able to generate and upload its build in a single step.
For more information, see the article Configuring direct updates for the branded mobile app.
Generate the builds:
In the top right corner of your branded app’s configuration page, click the Generate builds button.
Next, in the window that opens, select for which app versions you want to generate the builds: iOS, Android, or both.
- If you have only configured one app version, you will be offered only that option (only iOS or only Android).
The message will also tell you, for each build you are generating, whether it will be automatically re-signed and submitted to the store (Direct updates configured) or needs to be manually re-signed and submitted to the store (Direct updates not configured).
When you are ready, click the Generate builds or Generate and upload builds button to start the process.
→ This will start the generation of the app package or packages–depending on whether you selected to generate a build only for Android, only for iOS, or for both. The package generation process may take a few hours to complete (up to 8 hours).
Please note: The build generation may fail when launched during the Docebo weekly or monthly release process. Should this happen, try re-generating it when the release process is over.
You can check the progress in the banner at the top of your branded app’s configuration page. :
- When you click the Generate builds/Generate and upload builds button it will change to Preparing your builds... Build requested.
- When the process is complete it will display the outcome (build generated or build generated and sent to the store) for each app version you chose to generate. You will also receive an email notification.
- If a build was generated and sent to the store, the entire process was successful, and the app was re-signed and submitted to the store. There is no further action needed.
→ You can still use the Download build button to download a local copy of the build, if required. But note that the downloaded build is not re-signed. - If a build was only generated, then you still need to download the package, then manually re-sign it and submit it to the app store.
Manually re-sign and upload your package to the app store:
Repeat the following steps for each version of your app (iOS and Android) that is not automatically submitted.
- Once the build is available, in the outcome banner at the top of the app’s configuration page, click the Download build link to download the package.
Tip: You can also click the Manage builds button to see a history of your previously generated builds and download the latest one.
You now need to re-sign it to replace the digital signature temporarily applied by Docebo during the app creation process with your own one, and then upload the re-signed package to the app stores. Follow the instructions in Re-signing and publishing the branded mobile app.
Please note: If you don’t download the package within the expiration date, you won’t be able to download the package, but you’ll have to generate a new build.
Build error messages
If an error occurs during the build generation or upload process, the outcome banner will show a message indicating at what stage the error occurred. This same information is also provided in the e-mail that you receive.
- Error while generating the build. The build could not be generated at all. Check your branded publisher settings, or contact the Help center. In this case there is no build available to download.
- Error while re-signing the build: The build was correctly generated but an error occurred during automatic re-sign. You can still download the unsigned package and try manually re-signing and uploading it.
-
Error while uploading the build to the store: Build generation
and automatic re-signing were both successful, but the upload to the store
failed. You can check the Direct updates settings and try again. Alternatively,
you can download the build and manually re-sign and upload it.
→ Note that the build you download is always unsigned and needs to be re-signed, even if automatic signing was successful.
Edit or delete a branded app
The Branded mobile app publisher page lists all the branded apps that have been created so far. If you want to edit or delete an app, select the ellipsis icon at the end of the app’s row, then select your corresponding choice from the dropdown menu.
Every time you edit the app, you have to ask for a new build. Once the build process is complete, you’ll receive an email notification.
To edit a branded app:
- Click the ellipsis icon on the app row and select Edit.
- Make any required changes in the App details, Branding, iOS app settings, Android app settings, Firebase services, and Security settings.
- When you are ready click Save changes.
→ After you update your app settings, remember that, for your changes to take effect, you will need to generate a new build and submit it to the stores.
To delete a branded app:
- Click the ellipsis icon on the app row and select Delete.
- In the dialog box, click Delete again to confirm.
→ The app is removed from the Branded mobile app publisher page. Note that this deletion does not remove the app from any stores where it was published. You will also have to separately unpublish the app from the app stores.
Please note: If you delete an app and then you need it again, you will have to reconfigure all its settings in the branded publisher page.
Update the branded app
Even if you do not change your branded mobile app settings, you will need to periodically generate and distribute a new build to incorporate the latest updates, based on the new version of the source code. The builds in branded mobile app publisher are always generated using the codebase’s most recent version available.
Check for updates:
When a new version of the Go.Learn and branded mobile app is released, this is announced on the Product updates page.
You can also check for updates directly on the branded publisher page:
- In the Latest version column you can check the latest released version of the Go.Learn and branded mobile app.
- The iOS build and Android build columns instead show you the version of the latest build you generated. An alert icon also appears if you need to update to the latest version.
Update your app:
When you see that a newer version of the app is available, to deliver that update to your users you need to generate new builds of your iOS and Android apps and upload them to the stores. To do this:
- Perform the steps described in the chapter Generate the builds and upload them to the app stores
Please note:
- You are not forced to update your branded app, however the update is highly recommended to ensure you have the most reliable and feature-complete version of the app—with all of the functionalities included in the release for Go.Learn.
- Note also that Docebo only offers product support for the latest version of the mobile app.
Review app details
After you have created an app, you can review if needed the app name and platform URL that you entered during app creation. You will also need to enter an e-mail address to receive build notifications:
To do this, in the branded publisher page of your app, select Settings > Details.
Please note: Changing the app name creates a separate app. Once your store listing is created and the branded app configuration is complete, changing the app name will require creating an entirely new store listing, and reconfiguring the app from scratch.
Customize the branding of your app
In the Branding area of the branded publisher page, you can customize the look and feel of your branded app.
To access it, select Admin menu > THEME SETTINGS > Branded mobile app publisher > [app name].
Here, you can configure the App icon, Splash screen, Drawer menu, and Prelogin page.
Image dimensions for app icon and splash screen icon:
The image dimensions for both the launcher icon and splash screen icon must be 1024x1024px at 72 DPI
The required file format is PNG 32 bit:
- with alpha-channel for Android
- without alpha-channel for iOS
The maximum file size is 4MB.
You should also center your icon within the 1024px square as indicated in the following sections.
App icon
The app icon is the icon displayed on the device’s screen, which users must tap to start the app.
A round icon is usually used on Android, while a square icon with rounded borders is used on iOS. To avoid cropping, center your icon within a 1024px diameter circle as illustrated below.
Splash screen
The splash screen is the image shown after the user taps the app icon, while the application is loading. This will typically feature your branding or logo. To avoid cropping, note that the logo must be placed within a centered 832px diameter circle as indicated below.
Prelogin page
Only in the case of the open-domain mobile app, you will see a Prelogin background image section. Here you can upload the background of the welcome screen where the user inserts the platform URL.
Prelogin background image dimensions must be 720x1280px (portrait orientation to fit mobile phones) at 72 DPI, and the required file format is PNG 32 bit with alpha-channel. The maximum file size is 4MB.
iOS app settings
In the Settings > iOS app area of the branded publisher page, you can enable and set up the iOS version of your branded app.
To get started, if you had not already enabled iOS when creating the app, you can do so now: Select the check box Enable iOS mobile app.
The settings you configure here are those specific to the iOS app:
iOS > Reader app
Reader mode is required by Apple guidelines to let users access content purchased outside the app.
- This will make your app compliant with Apple’s guidelines on e-commerce (paid content) (opens in a new tab), and avoid it being rejected by Apple App Store .
Enabling Reader app mode ensures that your users can use the mobile app to access previously purchased content, such as paid courses purchased on the desktop version of the platform.
Please note that with Reader app mode enabled, user accounts cannot be created within the mobile app. Therefore, if you allow self-registration on your platform, users will need to register from the desktop platform.
iOS > Store link
Insert the URL of your branded app’s listing page in the Apple App Store. For example:
https://apps.apple.com/us/app/go-learn/id1362542319If you are not distributing your app via the stores, you can leave the field blank.
iOS > Universal link
A universal link is a URL that allows users to open the branded app on a specific screen, rather than in the browser.
To enable this functionality, select the Enable universal link check box. Then you will need to insert your App ID.
Retrieve the app ID
You can retrieve the app ID in the Apple Developer's Console (opens in a new tab), in the Certificates, Identifiers & Profiles section.
The value of the app ID key is the team ID or app ID prefix followed by the bundle ID. The two parts are separated by a dot. Format: teamID.bundleID, sample: ABCD1234.com.apple.wwdc.
For example, with the app ID configuration shown in this screenshot, in the App ID field you will need to type:
9YR6YH8KLL.com.mycompany.myapp.clientCheck that Associated Domains is enabled
On the Certificates, Identifiers & Profiles page, scroll down until you reach the Capabilities tab, where you need to make sure that the Associated Domains capability is enabled.
Find more information on the associated domains (opens in a new tab).
iOS > Demo login
The demo login functionality allows users to preview the app without creating an account and signing in. To use this function you need to first configure a specific account on the platform, with suitably restricted permissions, that you will use as the demo account.
To enable it, select the check box Enable iOS demo login and enter the demo account credentials in the Demo username and Demo password fields.
iOS > Package format
In this section select the iOS app build format. IPA is recommended for distribution and testing. XArchive is for manual testing or advanced Xcode workflows.
iOS > Direct updates
In this area you can optionally configure settings to automatically send app updates to the stores directly from the Branded mobile publisher page, without having to manually re-sign and upload each new build of your app.
Please note: You can also skip this configuration and add it at a later date.
When you configure direct updates, each time you generate a build it will be automatically re-signed and submitted to the app store.
For instructions, refer to the article Configure direct updates for the branded mobile app.
Android app settings
In the Settings >Android app area of the branded publisher page, you can enable and set up the Android version of your branded app.
To get started, if you had not already enabled Android when creating the app, you can do so now: Select the check box Enable Android mobile app.
The settings you configure here are those specific to the Android app:
Android > Store link
Insert the URL of your branded app’s listing page in the Google Play Store. For example:
https://play.google.com/store/apps/details?id=com.docebo.mobile→ If you are not distributing your app via the stores, you can leave the field blank.
Android > Package name
Enter the Android packageID of your branded mobile app. For example, com.docebo.mobile.
Android > App links
An app link is a URL that allows users to open the branded app on a specific screen.
To enable this functionality, select the Enable app links check box. Then in the SHA certificate fingerprint field you will need to insert the SHA256 fingerprint of the signing certificate.
To retrieve this, access the Google Play Console (opens in a new tab) and reach the App Integrity menu item. In the Digital Asset Links JSON section on the page, copy the value that you find under sha256_cert_fingerprints.
Android > Package format
Select AAB (Android App Bundle) if you want to publish your branded mobile app in the Google Play Store.
Important note: starting August 2021, Google Play (opens in a new tab) requires new apps and updates to existing apps published on the Android Google Play Store to use the Android App Bundle (AAB) package format.
You can still select the Android Package (APK) option if you plan to publish your app through a Mobile Device Management (MDM) system rather than the public Google Play Store.
Android > Direct updates
In this area you can optionally configure settings to automatically send app updates to the stores directly from the Branded mobile publisher page, without having to manually re-sign and upload each new build of your app.
Please note: You can also skip this configuration and add it at a later date.
When you configure direct updates, each time you generate a build it will be automatically re-signed and submitted to the app store.
For instructions, refer to the article Configure direct updates for the branded mobile app.
Firebase services (push notifications, Google sign-in, Analytics)
You will need to configure the Services section if you want your branded mobile app to support Firebase Messaging (Notifications or In-app messaging), Google sign-in, or Google analytics.
- The specific settings you need to configure will depend on which services you want to use.
- If you do not require these features, you can leave the Enable Firebase services check box deselected.
Before you start:
- If you have not already done so, first complete the steps outlined in Configuring Firebase for the branded mobile app.
Next, in the branded publisher page of your app, select Settings > Services and select the Enable Firebase services check box.
For all Firebase services, you now need to upload the Google services configuration file obtained from Firebase. The files to upload depend on which app versions you are creating:
- For the iOS app, upload the GoogleService-Info.plist file obtained from Firebase.
- For the Android app, upload the google-services-json file obtained from Firebase.
Now under Firebase settings select the check boxes corresponding to the services you want to enable on your app. You must select at least one service.
(If you don’t want any of these services, just deselect the Enable Firebase services check box.)
Enable push notifications:
If you want to use push notifications or Google analytics on your app, select this check box. Then enter the Firebase project ID and upload the Firebase service account key file.
→ For how to obtain these see the article Configuring Firebase for branded mobile app > Get Firebase project ID and Service account key file.
Enable Google sign-in:
Select this check box to use Google sign-in on your app. Then enter the Web client ID of your app’s project in Firebase, and if you have an iOS app also enter the iOS client ID.
→ For how to obtain these see the article Configuring Firebase for branded mobile app > Enable Google sign-in.
Security settings
Finally, in the Security area you can configure some settings related to data privacy, authentication, and usage tracking.
Under Security > Data protection, you can configure Certificate pinning and App usage in China.
Under Security > Tracking you can configure the Adjust mobile measurement partner (MMP)
Certificate pinning
Certificate pinning is a technique developed to protect web and mobile apps from rogue certificate authorities. It ensures that no network data is compromised even if a user is tricked into installing a malicious root certificate on their mobile device. This helps better protect the app against phishing and man-in-the-middle attacks.
With certificate pinning, you integrate within your app the fingerprint (digest) of the certificate that you know is used by your backend services, and this enforces the security level of your branded application as it enables you to immediately discover if you are a victim of a cyber attack.
To configure this, flag the Enable certificate pinning option. Then, in the Digest field insert the digest of your HTTPS certificate in SHA-256 Pin format.
- To retrieve your digest you can ask for assistance from the Security Officer of your company
- Alternatively, you can use the free online service https://www.ssllabs.com/ssltest/ (opens in a new tab), that performs an analysis of the configuration of any SSL web server.
- Please note that, if you release a new digital certificate, you will need to update the fingerprint in the Digest field and rebuild your app.
Retrieving the digest from SSL Labs
Follow these steps on the SSL Labs website (please note that Docebo is not responsible for the completeness of the following information in case of changes made by SSL Labs to the outlined process):
- Enter the URL of your Docebo platform into the Hostname field and click Submit. This should be the same URL that you set in the Domain URL field in the Branded Mobile App Publisher page.
- Wait for the analysis to complete, then click on the IP address retrieved in the Server column. If more than one result is shown in the table, please select the first one.
- A page displaying the SSL report will open, where you can find the digest of your certificate in the Subject section of the Certificate box.
- Copy the following string Pin SHA256, then paste it into the Digest field in the Certificate Pinning section on your Docebo platform. Double-check that you don’t copy-paste empty spaces at the beginning or at the end of the string.
App usage in China
If you want to enable the optimization for app usage in China, flag the option Enable app usage in China. This feature provides optimized performances to those using the app in China, including users moving in and out of the country and staying for short periods of time.
Adjust MMP
If you have created different promotional campaigns for your branded app on different advertising networks and social media, you will need to measure and analyze the Return on Investment (ROI) of each campaign. Mobile Measure Partners (MMPs) are particularly useful to measure performance and conversion rate from different ad networks and are used to compare the performance of each network and understand which medium performs the best.
An MMP collects, organizes, and standardizes mobile app data to deliver a uniform assessment of campaign performance metrics.
Adjust (opens in a new tab) MMP can be integrated with Docebo’s Branded Mobile App Publisher functionality. In order to enable the support for Adjust as MMP for your branded app, select the option Enable Adjust integration, then paste the app token you generated on the Adjust dashboard.
Please note: When you publish your branded app on the Apple App Store, you are asked some privacy questions on data types collected in your app. You can find these details in Adjust Knowledge Base (opens in a new tab). To make sure you fill the form with the correct answers, check out the PDF attached to the Important Notes on the Publishing Process chapter of the KB article explaining how to publish a branded app.