---
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-02-13T11:35:43Z
published: 2026-02-13T11:35:43Z
---

> ## 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 Official and Experimental app versions. To see these flavors, navigate to `android &gt; app &gt; src` folder. Here you will find the following folders:

- `experimental` and `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 Experimental app using `experimental`, `debug`, and `main` folders:

- Set `APPLICATION_ID`, `VERSIONCODE` and `BugsnagAPIKey` in `./android/gradle.properties`.
- Generate a [new image asset](https://developer.android.com/studio/write/image-asset-studio) for `ic_notification` and target `main`.
- Generate a [new image asset](https://developer.android.com/studio/write/image-asset-studio) for `ic_launcher` and target `experimental`.
- 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(48).png)

- 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(49).png)

## 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)
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)

![](https://cdn.us.document360.io/27ca1fd4-36d7-4cde-b4eb-97fc1652954c/Images/Documentation/image(139).png)

## Run the app

To run the app, execute the following commands:

```bash
yarn
yarn android-whitelabel <YOURAPPID>
```

For example, the app created on this document would use:

```bash
yarn android-whitelabel chat.rocket.whitelabel
```

> This script uses `experimentalDebug` build flavor. When you build your app on release mode, use `experimentalRelease.` See the [Android documentation](https://developer.android.com/build/build-variants) for more info.
