# iOS Simulator

In order to capture the HTTP/HTTPS message from your iOS Simulator devices, please navigate to:

* **Certificate** **Menu** -> **Install Certificate on iOS -> Simulators**

## 1. iOS Simulator Setup Guide

![Automatically install the Certificate to iOS Simulators](/files/0cxK92fxJIqYV6yI9o1B)

{% hint style="info" %}
It works for iOS, iPadOS, tvOS and watchOS.
{% endhint %}

The following photo describes three steps:

1. Install **Root Proxyman Certificate** on your machine: You can follow the [macOS Guide](/debug-devices/macos.md).
2. Install Proxyman Certificate to all available simulators, which you have opened at least one time.
3. **Reset the Simulator**: Proxyman tries to reset all simulators, so it will load the new Certificate.

{% hint style="info" %}
From Proxyman 2.19.0+, Proxyman uses the [simctl](https://nshipster.com/simctl/) command line to perform tasks.

**simctl** is built-in on your installed Xcode, which is more modern and reliable than the legacy approach (Use Python custom scripts).
{% endhint %}

{% hint style="info" %}
This step only installs on Simulators, which you have open at least one time

For instance, if you would like to debug on iPhone X Simulator, please make sure to **open** the iPhone X Simulator first, then **install** the Certificate in Step 2
{% endhint %}

### Xcode Preview (SwiftUI)

If you're using Xcode Preview for SwiftUI, you can install the certificate into the Xcode Preview Simulator by following:

1. Open Xcode with Previewer Mode (SwiftUI).
2. Open Proxyman -> Certificate Menu -> Install for iOS -> Simulator
3. Click on the Advanced button -> Install for Xcode Preview

You can read more at: <https://github.com/ProxymanApp/Proxyman/issues/1568#issue-1610877870>

### Manually Install

In Proxyman v4.16.0 or later, you can manually install the certificate to your iOS Simulator in case the Automatic Solution doesn't work.

1. Certificate Menu -> Install Certificates for iOS -> Simulators
2. In Step 2, click on the ↓ button (Next to the Prepare Simulators button) -> Install Manually…

<figure><img src="/files/UaEtYO8TMviIDh55WdrB" alt=""><figcaption><p>Install certificate manually</p></figcaption></figure>

3. Drag and drop the certificate to your iOS Simulator

<figure><img src="/files/D5vGZq2Pj5eor2pB41sH" alt="" width="563"><figcaption><p>Manually Install the certificate</p></figcaption></figure>

4. Open your iOS Simulator -> Setting app -> General -> About -> Certificate Trust Setting -> Find Proxyman CA Certificate and switch it ON
5. Done

## 2. Troubleshooting

### 1. Unable to install the Certificate

If you get errors when clicking on Step 2, please open Xcode -> Preferences -> Location tabs -> Select your Xcode in the Command Line Tools.

![Make sure you have the Xcode Command Line](/files/8hcWvebE2KDHq0vHGgwh)

### 2. Get SSL Error from HTTPS Response

* Opening the Setting app -> General -> About -> Certificate Trust Settings and verifying that Proxyman Certificate is installed and trusted.

![Proxyman Certificate is installed and trusted properly](/files/-MV04a_0MtTevA03M6fq)

If it's not installed:

* Open the iOS Simulator Setup (Certificate Menu -> Install Certificate on iOS -> Simulator) and click on the 2nd button.
* Or Try the following step to manually install the Certificate.

### 3. Some HTTP/HTTPS Requests are missing from Proxyman

Alamofire or URLSession might use the cached response for your request. As a result, the actual request doesn't hit the server. Thus, Proxyman could not capture and display it on the app.

Solution:

* Disable the cache mechanism on URLSession or Alamofire.
* Use the [No Caching Tool](/advanced-features/no-caching.md) (⌥⌘N)

## Manually Install the Certificate by exporting the certificate

If you cannot install the certificate, you can **manually** do it:

1. Open Proxyman -> Certificate Menu -> Export -> Root Certificate as DER -> Save to Desktop Folder
2. Open the Simulator **drag the certificate and drop it** on the Simulator screen
3. Open Setting app (on the Simulator) -> General -> Device Management -> Select the Certificate -> Install
4. Setting app -> General -> About -> Certificate Trust Settings and verifying that Proxyman Certificate is installed and trusted.
5. Done ✅

### Tutorial

See detailed steps to [debug an application on iOS Simulator ](https://proxyman.io/blog/2019/07/Debugging-on-iOS-Simulator-with-Proxyman.html)with Proxyman


---

# Agent Instructions: 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://docs.proxyman.com/debug-devices/ios-simulator.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.
