> For the complete documentation index, see [llms.txt](https://docs.emobiq.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.emobiq.com/emobiq-ai/readme/building-your-app/build-and-publish/ios-build-and-publish.md).

# iOS Build and Publish

## **Publishing Your iOS App to the App Store**

This guide focuses **primarily on eMOBIQ AI’s iOS publishing workflow**. For detailed iOS Apple steps, follow the linked official documents.

For Apple Developer setup, follow [official Apple Docs](https://developer.apple.com/documentation/appstoreconnectapi)

Ensure you have:

* An **Apple Developer Account** ($99/year)
* **Xcode** installed (for certificate generation)

***

### **1. Build an App Store Version in eMOBIQ AI**

#### **Prerequisites**

* **Signing assets** from Apple:
  * `.p12` private key + password. Generated from an [Apple Device](https://developer.apple.com/help/account/certificates/create-a-certificate-signing-request/)
  * `.mobileprovision` file. Generated from [Apple Developer Account](https://developer.apple.com/account/resources/certificates/list)

#### **Steps in eMOBIQ AI**

1. **Go to**: `Publish` → `Settings` → `iOS` → `Build Settings`
2. **Upload/Enter**:
   * **Code Sign Identity** (Common Name from certificate)
   * **Team ID** (10-character ID from Apple Developer account)
   * **Provisioning Profiles**:
     * Debug: `.mobileprovision` file
     * Release: `.mobileprovision` file
   * **Private Key**: `.p12` file
   * **Private Key Password** (used when exporting `.p12`)
3. Click **Save**

<figure><img src="/files/iHA81S5elppYnbbMPo1s" alt="" width="563"><figcaption></figcaption></figure>

{% hint style="info" %}
***Security Note**: Store your `.p12` password securely—it’s required for updates*
{% endhint %}

***

### **2. Publish to App Store in eMOBIQ AI**

#### **Option A: Manual Upload** *(One-time)*

1. **Prepare App Store Listing**:
   * [Complete metadata in App Store Connect](https://developer.apple.com/help/app-store-connect/)
2. **Upload `.ipa`**:

.ipa file can be found on the build page of eMOBIQ AI once the app has been successfully built

<figure><img src="/files/uui0IzTcEby3aWFDzyTi" alt="" width="375"><figcaption></figcaption></figure>

* Use **Apple’s Transporter App** ([download here](https://apps.apple.com/us/app/transporter/id1450874784))
* Wait 24-48 hours for Apple to review your app

**Option B: Auto-Publishing** *(Recommended)*

1. **Link App Store Connect to eMOBIQ AI**:
   * [Generate an App Store Connect API Key](https://developer.apple.com/documentation/appstoreconnectapi/creating_api_keys_for_app_store_connect_api)
   * Download `.p8` file (save **Key ID** and **Issuer ID**)
2. **Configure in eMOBIQ AI**:
   * Go to `Settings` → `iOS` → `Publish Settings`
   * Upload:
     * `.p8` file (Account Private File)
     * Key ID
     * Issuer ID
     * App metadata *(must match App Store Connect)*

{% hint style="info" %}
***First-time requirement**: Manual upload before auto-publishing.*
{% endhint %}

***

**Need Help?**

* [Apple Developer Support](https://developer.apple.com/support/)
* Create a Ticket: [eMOBIQ Support Page](https://main.emobiq.com/support)

For TestFlight troubleshooting, view [Apple’s Official guide](https://developer.apple.com/testflight/)


---

# 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.emobiq.com/emobiq-ai/readme/building-your-app/build-and-publish/ios-build-and-publish.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.
