--- title: "Android App White-Labeling" slug: "android-app-white-labeling" description: "White-label Rocket Chat Android apps. Create customised secure messaging apps for enterprise collaboration." updated: 2026-08-14T10:49:25Z published: 2026-08-14T10:49:25Z canonical: "developer.rocket.chat/android-app-white-labeling" --- > ## Documentation Index > Fetch the complete documentation index at: https://developer.rocket.chat/llms.txt > Use this file to discover all available pages before exploring further. # Android App White-Labeling ## Prerequisites - Make sure that you have the requirements outlined in the [Mobile App White-Labeling](/v1/docs/mobile-app-white-labeling) guide. - Android Studio (latest stable version). - Node.js and yarn. ## General setup Rocket.Chat has build flavors to generate the official app versions. To see these flavors, navigate to `android > app > src` folder. Here you will find the following folders: - `official` folders contain app icons and splash screens. - `main` folder contains core implementations. - `debug` folder contains code to run the app in debug mode. To build the app using `debug` and `main` folders: - Set `APPLICATION_ID`, `VERSIONCODE` and `BugsnagAPIKey` in `./android/gradle.properties`. - Change `android:sharedUserId` in `./android/app/src/main/AndroidManifest.xml` to a value unique to your app, such as your application ID. Android does not allow two apps with the same `sharedUserId` but different signing keys on the same device, so keeping the official value prevents your build from being installed alongside the official Rocket.Chat app. > [!WARNING] > Set `android:sharedUserId` before your first release. This value cannot be changed for a published app, updating it later forces all existing users to uninstall and reinstall. Do not remove the attribute, change its value instead. - Generate a [new image asset](https://developer.android.com/studio/write/image-asset-studio) for `ic_notification` . - Generate a [new image asset](https://developer.android.com/studio/write/image-asset-studio) for `ic_launcher` . - Splash screen uses the same asset as the `ic_launcher`, and you can change the background on `splashBackground`. ![](https://cdn.us.document360.io/27ca1fd4-36d7-4cde-b4eb-97fc1652954c/Images/Documentation/image(200).png?sv=2026-02-06&spr=https&st=2026-10-30T08%3A57%3A41Z&se=2026-10-30T09%3A57%3A41Z&sr=c&sp=r&sig=624rIoPNDljM6USa5Yn04OnnFbfgECEK8DRfqlEJ%2BxE%3D) - Change the app name and share the extension name on `./android/app/src/main/res/values/strings.xml` ![](https://cdn.us.document360.io/27ca1fd4-36d7-4cde-b4eb-97fc1652954c/Images/Documentation/image(201).png?sv=2026-02-06&spr=https&st=2026-10-30T08%3A57%3A41Z&se=2026-10-30T09%3A57%3A41Z&sr=c&sp=r&sig=624rIoPNDljM6USa5Yn04OnnFbfgECEK8DRfqlEJ%2BxE%3D) ## Generate upload key Follow these steps to generate the Keystore for verifying your app on Google Play: 1. Run the following commands: ```bash cd android/app keytool -genkeypair -v -keystore my-upload-key.keystore -alias my-key-alias -keyalg RSA -keysize 2048 -validity 10000 ``` > To learn more about generating an upload key in ReactNative, see the [official documentation](https://reactnative.dev/docs/signed-apk-android#generating-an-upload-key). 2. The command prompts you for some credentials. ![](https://cdn.us.document360.io/27ca1fd4-36d7-4cde-b4eb-97fc1652954c/Images/Documentation/image(50).png?sv=2026-02-06&spr=https&st=2026-10-30T08%3A57%3A41Z&se=2026-10-30T09%3A57%3A41Z&sr=c&sp=r&sig=624rIoPNDljM6USa5Yn04OnnFbfgECEK8DRfqlEJ%2BxE%3D) 3. Set `KEYSTORE_PASSWORD` and `KEY_PASSWORD` on `./android/gradle.properties` with the passwords you were prompted for. ## Generate Android app on Firebase 1. Go to the project overview on [Firebase](https://console.firebase.google.com). 2. Navigate to **Settings > Project settings**. 3. On the **General** tab, click on **Add app** under **Your apps**. 4. Enter your bundle ID as the Android package name and click **Register app**. 5. Download the `google-services.json` config file and move it to the **src** folder in the **app** folder in your project, as demonstrated in the screenshots below: ![](https://cdn.us.document360.io/27ca1fd4-36d7-4cde-b4eb-97fc1652954c/Images/Documentation/image(51).png?sv=2026-02-06&spr=https&st=2026-10-30T08%3A57%3A41Z&se=2026-10-30T09%3A57%3A41Z&sr=c&sp=r&sig=624rIoPNDljM6USa5Yn04OnnFbfgECEK8DRfqlEJ%2BxE%3D) ![](https://cdn.us.document360.io/27ca1fd4-36d7-4cde-b4eb-97fc1652954c/Images/Documentation/image(139).png?sv=2026-02-06&spr=https&st=2026-10-30T08%3A57%3A41Z&se=2026-10-30T09%3A57%3A41Z&sr=c&sp=r&sig=624rIoPNDljM6USa5Yn04OnnFbfgECEK8DRfqlEJ%2BxE%3D) ## Run the app To run the app, execute the following commands: ```bash pnpm pnpm android-whitelabel ``` For example, the app created on this document would use: ```bash pnpm android-whitelabel chat.rocket.whitelabel ```