> For the complete documentation index, see [llms.txt](https://docs.oneweb.tech/oneweb/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.oneweb.tech/oneweb/design-and-develop-oneweb-apps/design-and-develop-ux-ui/ux-ui-components/pages/create-your-first-mobile-app/mobile-app-ci-cd.md).

# Mobile App CI/CD

From version 4.0.0.19 ONEWEB Page Designer can build the mobile application as APK for android or IPA for iOS and push it to the store. The screen for page **CI/CD** is available in the deployment section of the mobile App. User can choose either Android or iOS. The following section explains the step-by-step procedure to upload your mobile app to the store for both Android and iOS.

{% hint style="info" %}
**Note**: CI stands for Continuous Integration and CD stands for Continuous Deployment.
{% endhint %}

**To build Android App** \
For Unsigned APK, you can the start the build immediately. But for Signed APK you need to add the following details to start the build. \
&#x20;     Keystore file “.jks” \
&#x20;     Alias name \
&#x20;     Keystore password \
&#x20;     Password. \
For more information on Signing the app please follow [this link](https://developer.android.com/studio/publish/app-signing).

![](https://2015371994-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FMpDjHWFRUtZ5nJcSfVXd%2Fuploads%2FsC1IF1tGde3OgxPhwm8R%2Fimage.png?alt=media\&token=07526363-4dff-4e05-bab1-6b8631b9f6f7)

Once you enter the details, you can press the **Build Android** button ![](https://2015371994-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FMpDjHWFRUtZ5nJcSfVXd%2Fuploads%2FM05TeRSq4Y39aDhM7GZI%2Fimage.png?alt=media\&token=eae20b42-f4c4-493e-984d-298e19302ade) under the **Release** section to build the signed APK.

Signed APK can be released to internal test on Google Play Console. For that you need to do the following&#x20;

* &#x20;Create a Google Developer account.&#x20;
* Create a Service account for project "Google Play Android Developer" and you will get an email and a private key in JSON format.&#x20;
* Add user from the email which you get in step 2 and provide permission for the application.&#x20;
* Upload private key (JSON) to Page Designer.

![](https://2015371994-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FMpDjHWFRUtZ5nJcSfVXd%2Fuploads%2FPj9Z41Ib1gGZB02uTQuX%2Fimage.png?alt=media\&token=5a9882e1-0311-4135-9de5-4b9345701d71)

Press action button ![](https://2015371994-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FMpDjHWFRUtZ5nJcSfVXd%2Fuploads%2FX7YAqn2PLvMbQo1IHy28%2Fimage.png?alt=media\&token=5ddb37ec-cd2a-42de-a86e-2853e843e11b) of the signed build and select Play Store.

![](https://2015371994-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FMpDjHWFRUtZ5nJcSfVXd%2Fuploads%2FhvPDPlH38aW372OVG2EW%2Fimage.png?alt=media\&token=d2ee497e-4a75-4c40-89de-d406f7ef7786)

**To build iOS App** \
To build an iOS App you must have an Apple Developer account. Please follow the below steps once you have a valid apple developer account.

Export the Certificate file in ".p12" format from Keychain Access program in Mac OS or use Certificate Signing Request (CSR) of Page Designer to generate Certificate (.cer). For more information on iOS Certificates please follow [this link](https://support.staffbase.com/hc/en-us/articles/115003458931-Creating-the-iOS-Distribution-Certificate).&#x20;

\
Create provisioning profile on Apple Developer account.&#x20;

* Login to your Apple Developer account, choose Select Certificates, Identifiers & Profiles.&#x20;
* Select the type of Provisioning Profile that you need and press Continue.&#x20;
* Select App ID and press Continue.&#x20;
* Select the Certificate you wish to include in this provisioning profile (the certificate the app was signed with) and click Continue.&#x20;
* Select the devices you wish to include in the provisioning profile. The certificate is a public/private key-pair, which identifies who developed the app.&#x20;
* Create a name for your profile and click Generate.

Upload Certificate and Provisioning Profile on the App in Page Designer

![](https://2015371994-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FMpDjHWFRUtZ5nJcSfVXd%2Fuploads%2F5JRTvOdLU5lSXNVwS18q%2Fimage.png?alt=media\&token=e859f6e2-a5de-4957-b3b5-a7c1fca78d74)

Now, you can build the iOS for Development/Distribution.

![](https://2015371994-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FMpDjHWFRUtZ5nJcSfVXd%2Fuploads%2FG3UIzPN9cxU30xqAEAK8%2Fimage.png?alt=media\&token=76a42119-dbf6-4c40-a34a-e3f1a0a17305)

The built IPA for Distribution can be released to testflight on App Store.&#x20;

* Enter the Apple ID, App ID and Application Specific Password to connect to App Store&#x20;

![](https://2015371994-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FMpDjHWFRUtZ5nJcSfVXd%2Fuploads%2F6c2P2aUzzghj8CLEnqAY%2Fimage.png?alt=media\&token=f2950d1b-b099-4490-bf63-f09dc7b8d6a6)

* Press action button ![](https://2015371994-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FMpDjHWFRUtZ5nJcSfVXd%2Fuploads%2FXn1ZaAF34MHDOSGK77WW%2Fimage.png?alt=media\&token=388c77f5-656e-4d88-a888-262952ffe34b) on the built IPA for Distribution and select App Store.

![](https://2015371994-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FMpDjHWFRUtZ5nJcSfVXd%2Fuploads%2FkvOLFoZiYLXKL84dwS6C%2Fimage.png?alt=media\&token=19f3a3dd-2d57-49dd-b8b1-437d6e2488a8)


---

# 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, and the optional `goal` query parameter:

```
GET https://docs.oneweb.tech/oneweb/design-and-develop-oneweb-apps/design-and-develop-ux-ui/ux-ui-components/pages/create-your-first-mobile-app/mobile-app-ci-cd.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
