> For the complete documentation index, see [llms.txt](https://ed.sunbird.org/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://ed.sunbird.org/older-versions/contribute/source-code/workflows/mobile/configurations-to-setup-mobile-app.md).

# Configurations to setup mobile app

### 1. sunbird.properties

<mark style="color:blue;">**sunbird.properties**</mark> file contains all the necessary configurations to set up Sunbird mobile app. The following are the configurations inside the <mark style="color:blue;">**sunbird.properties**</mark> file.

#### Note

The properties can be environment-specific so the naming convention is \<env\_name>\_\_\<property\_\_name>. For example, suppose **base\_url** is the property so its dev environment-specific property name is **dev\_base\_url,** and the staging environment-specific property name is **staging\_base\_url.**

| Property name             | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| ------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| app\_name                 | Name of the app/instance                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| app\_version\_code        | Version code should be incremented every time a build is uploaded to Play Store.                                                                                                                                                                                                                                                                                                                                                                                                                         |
| app\_id                   | A unique application id that identifies the app.Env specific properties dev\_app\_id, staging\_app\_id                                                                                                                                                                                                                                                                                                                                                                                                   |
| base\_url                 | Base URL of the instance(shouldn't contain "/" at the end). Env specific properties dev\_base\_url, staging\_base\_url                                                                                                                                                                                                                                                                                                                                                                                   |
| producer\_id              | Unique id used to show the origin(app/portal/desktop) of telemetry.Env specific properties dev\_producer\_id, staging\_producer\_id                                                                                                                                                                                                                                                                                                                                                                      |
| channel\_id               | Default channel id.Env specific properties dev\_channel\_id, staging\_channel\_id                                                                                                                                                                                                                                                                                                                                                                                                                        |
| mobile\_app\_key          | The credential is required to generate **mobile\_app\_secret**. This can be a version number Eg. "\<instancename>-0.1". Suppose in the future you want to stop API calls to "\<instancename>-0.1" then change it to "\<instancename>-0.2" and generate a new mobile\_app\_secret and use it in the app. Env specific properties dev\_mobile\_app\_key, staging\_mobile\_app\_key.                                                                                                                        |
| mobile\_app\_secret       | The credentials required for API calls Use [this script](https://github.com/Sunbird-Ed/SunbirdEd-mobile-app/blob/master/mobile_app_key_secret_generator.js) to generate mobile\_app\_secret. The required properties to run the script is domain name, mobile\_app\_key, mobile admin key, and mobile admin secret(Run the **OnboardConsumers** Jenkins Job and take the mobile admin key and secret from Jenkins Output.)Env specific properties dev\_mobile\_app\_secret, staging\_mobile\_app\_secret |
| deeplink\_base\_url       | Base URL used to support deep linking in the app.Env specific properties dev\_deeplink\_base\_url, staging\_deeplink\_base\_url                                                                                                                                                                                                                                                                                                                                                                          |
| support\_email            | Email address of customer support where users can email their queries about the app.                                                                                                                                                                                                                                                                                                                                                                                                                     |
| custom\_scheme            | Custom scheme to support browser-based google login.Env specific properties dev\_custom\_scheme, staging\_custom\_scheme                                                                                                                                                                                                                                                                                                                                                                                 |
| merge\_account\_base\_url | Base URL of merge account feature(shouldn't contain "/" at the end).Env specific properties dev\_merge\_account\_base\_url, staging\_merge\_account\_base\_url                                                                                                                                                                                                                                                                                                                                           |
| oauth\_redirect\_url      | Redirect URL to support browser-based google login.Env specific properties dev\_oauth\_redirect\_url, staging\_oauth\_redirect\_url                                                                                                                                                                                                                                                                                                                                                                      |
| tou\_base\_url            | Terms of use baseurl.Env specific properties dev\_tou\_base\_url, staging\_tou\_base\_url                                                                                                                                                                                                                                                                                                                                                                                                                |
| survey\_base\_url         | Survey feature base URL(Manage Learn Usecase).Env specific properties dev\_survey\_base\_url, staging\_survey\_base\_url                                                                                                                                                                                                                                                                                                                                                                                 |
| projects\_base\_url       | Project feature base URL(Manage Learn Usecase).Env specific properties dev\_projects\_base\_url, staging\_projects\_.base\_url                                                                                                                                                                                                                                                                                                                                                                           |

#### 2. google-service.json

Create apps in the firebase console based on the number of variants available for your instance. In the firebase console add the package name equivalent to your variant app\_id. For example, suppose you have a staging variant of your instance and the property is following

```
staging_app_id = org.sunbird.app.staging
```

In the firebase console create an app whose package name should be "org.sunbird.staging.app".

For more reference follow this [google support page](https://support.google.com/firebase/answer/7015592?hl=en#android\&zippy=%2Cin-this-article).


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://ed.sunbird.org/older-versions/contribute/source-code/workflows/mobile/configurations-to-setup-mobile-app.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
