# Script automático para el emulador de Android

> Usa el script automático de Proxyman para configurar el HTTP proxy e instalar el certificado de Proxyman en los emuladores de Android, y capturar HTTPS con un solo clic.

## 1. ¿Qué es? {#1-whats-it}

Configurar el HTTP Proxy a mano e instalar y confiar en el certificado de Proxyman en tu emulador de Android es complicado y propenso a errores.

Proxyman incluye un script integrado que lo hace por ti en segundos. Puedes abrirlo desde **Certificate Menu -> Install Certificate on Android -> Emulators…**

> **Consejo:** A partir de Proxyman 5.16.0 o posterior, Proxyman puede instalar el certificado de Proxyman en el almacén de nivel de sistema. Esto permite descifrar todo el tráfico HTTPS de los emuladores de Android.

> **Nota:** Proxyman ahora funciona con emuladores de Google Play y sin Google Play. Configúralos en 1 clic. Consulta [google-play-android-emulator-with-magisk.md](https://proxyman.com/docs/es/debug-devices/android-device/google-play-android-emulator-with-magisk)

![Guía de configuración de emuladores Android de Proxyman con Override All Emulators y la opción Install Proxyman VPN marcadas](https://proxyman.com/docs/assets/Screenshot%202026-01-10%20at%2019.29.46.jpg)

## Vídeo {#video}

[Captura HTTPS desde una app nativa de Android (OkHttp) en el emulador de Android con API 36](https://www.youtube.com/watch?v=CWInB7gZj6g)

## 2. Ventajas {#2-benefit}

**1 clic para:**

* **✅ Automático:** activa y revierte el HTTP Proxy
* **✅ Descarga, instala y confía automáticamente** en el certificado de Proxyman en el almacén de nivel de sistema. Descifra todo el HTTPS de tus emuladores. (Disponible en Proxyman 5.16.0 o posterior)
* No necesitas **network\_security\_config.xml**
* **✅** Menos propenso a errores y listo en unos pocos clics

> **Consejo:** Funciona con emuladores de Android y dispositivos Android físicos mediante `adb` (solo en Proxyman v5.19.0+)

![Ventana principal de Proxyman con solicitudes HTTPS descifradas de una app OkHttp que se ejecuta en el emulador de Android](https://proxyman.com/docs/assets/Capture_HTTPS_Android_Emulator_proxyman.jpg)

_Captura y descifra HTTPS de emuladores de Android con Proxyman_

* Instala el certificado de Proxyman en el almacén de nivel de sistema.

### ✅ App Flutter / React Native {#-flutter--react-native-app}

A partir de Proxyman macOS 6.4.0, Proxyman puede capturar tráfico HTTPS de apps Flutter sin cambiar el código.

Consulta la documentación de [flutter.md](https://proxyman.com/docs/es/debug-devices/flutter) para obtener más información.

## 3. ¿Cómo se usa? {#3-how-to-use-it}

1. Asegúrate de que el comando `adb` esté instalado. Si no lo está, instálalo

```bash
brew install android-platform-tools
```

2. Abre tu app Android con Android Studio
3. Crea un emulador nuevo en el Android Virtual Device Manager. **Asegúrate de que no sea una imagen de Google Play. Debe ser una imagen de Google APIs.**

* ✅ NUEVO: Proxyman ya puede rootear los emuladores de Google Play Store. Consulta [google-play-android-emulator-with-magisk.md](https://proxyman.com/docs/es/debug-devices/android-device/google-play-android-emulator-with-magisk)

4. Abre Proxyman -> Certificate Menu -> Install Certificate on Android -> Emulators… -> haz clic en el botón Override All Emulators

5. Espera a que termine el script de Terminal

6. Vuelve a abrir tu app Android desde Android Studio
7. Proxyman capturará todos los datos HTTPS ✅

> **Nota:** Si cierras Proxyman, asegúrate de hacer clic en el botón Revert All Changes. De lo contrario, tu emulador de Android no podrá acceder a Internet.

## 4. ⚠️ Proxyman 5.15.0 o anterior {#4-️-proxyman-5150-or-earlier}

* Proxyman 5.15.0 o anterior solo puede instalar el certificado de Proxyman a nivel de usuario.
* Eso significa que tienes que completar el siguiente paso:
* En tu código fuente:
  * Añade res/xml/network\_security\_config.xml

```xml
<network-security-config>
    <debug-overrides>
        <trust-anchors>
            <!-- Trust user added CAs while debuggable only -->
            <certificates src="user" />
            <certificates src="system" />
        </trust-anchors>
    </debug-overrides>

    <base-config cleartextTrafficPermitted="true">
        <trust-anchors>
            <certificates src="system" />
            <certificates src="user" />
        </trust-anchors>
    </base-config>
</network-security-config>
```

* Añade a AndroidManifest.xml

<pre class="language-xml"><code class="lang-xml">&#x3C;?xml version="1.0" encoding="utf-8"?>
&#x3C;manifest xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools">

    &#x3C;uses-permission android:name="android.permission.INTERNET" />

    &#x3C;application
        android:networkSecurityConfig="@xml/network_security_config">
        &#x3C;activity
            ...
        &#x3C;/activity>
    &#x3C;/application>

&#x3C;/manifest>
</code></pre>

## 5. Avanzado: ejecuta el script manualmente {#5-advanced-run-the-script-manually}

Puedes ejecutar el script manualmente en la app Terminal sin conceder el permiso de Automation en Privacy & Security.

### **Ruta del script**: {#script-path}

```bash
/Applications/Proxyman.app/Contents/Frameworks/ProxymanCore.framework/Resources/install_certificate_android_emulator.sh
```

* Para Proxyman 5.19.0 o posterior

```bash
Usage: /Applications/Proxyman.app/Contents/Frameworks/ProxymanCore.framework/Resources/install_certificate_android_emulator.sh -m <mode> [options]

Modes:
  all             Set proxy and install certificate
  proxy           Set proxy only
  revertProxy     Revert proxy settings only
  certificate     Install certificate only

Required Options based on Mode:
  -m, --mode <mode>              : Operation mode (all, proxy, revertProxy, certificate)
  -i, --ip <ip_address>          : IP address (required for all, proxy, certificate)
  -p, --port <port_number>       : Port number (required for all, proxy, certificate)
  -c, --cert <path_to_cert.pem>  : Path to Proxyman certificate (required for all, certificate)

Optional Options:
  --include-physical            : Include physical devices (default: only emulators)
  -h, --help                    : Show this help message
```

### Prepara el certificado {#prepare-the-certificate}

1. Abre la app Proxyman
2. Busca la IP actual en la barra de herramientas principal
3. Menú Certificate -> Export -> Root Certificate as PEM -> guarda el archivo en la carpeta Escritorio

### 5.1 Configurar el HTTP Proxy e instalar el certificado en el almacén de nivel de sistema {#51-override-http-proxy-and-install-the-certificate-to-system-level-store}

* Proxyman v5.19.0 o posterior (NUEVO)

```bash
bash /Applications/Proxyman.app/Contents/Frameworks/ProxymanCore.framework/Resources/install_certificate_android_emulator.sh --mode all --ip <current_ip> --port <port> --cert <certificate_path>
```

* Proxyman v5.18.0 o anterior

```bash
bash /Applications/Proxyman.app/Contents/Frameworks/ProxymanCore.framework/Resources/install_certificate_android_emulator.sh all <current_ip> <port> <certificate_path>
```

### 5.2 Solo configurar el HTTP Proxy {#52-only-override-http-proxy}

* Proxyman v5.19.0 o posterior (NUEVO)

```bash
bash /Applications/Proxyman.app/Contents/Frameworks/ProxymanCore.framework/Resources/install_certificate_android_emulator.sh --mode proxy --ip <current_ip> --port <port>
```

* Proxyman v5.18.0 o anterior

```bash
bash /Applications/Proxyman.app/Contents/Frameworks/ProxymanCore.framework/Resources/install_certificate_android_emulator.sh proxy <current_ip> <port> 
```

### 5.3 Revertir el HTTP Proxy {#53-revert-http-proxy}

* Proxyman v5.19.0 o posterior (NUEVO)

```bash
bash /Applications/Proxyman.app/Contents/Frameworks/ProxymanCore.framework/Resources/install_certificate_android_emulator.sh --mode revertProxy
```

* Proxyman v5.18.0 o anterior

```bash
bash /Applications/Proxyman.app/Contents/Frameworks/ProxymanCore.framework/Resources/install_certificate_android_emulator.sh revertProxy
```

## 6. Fecha de caducidad del certificado leaf {#6-left-certificate-expiry-date}

6.1 Problema: recibes este error al interceptar HTTPS desde un WebView de Android

❗️ Android WebView rechaza la conexión con ERR\_CERT\_VALIDITY\_TOO\_LONG

Puedes cambiar la caducidad del certificado leaf en Proxyman: ve a Settings -> General -> **More** (junto al certificado) -> **Leaf Certificate Expiry** y selecciona una caducidad más corta, por ejemplo 10 días.

![Settings de Proxyman, General, con el menú More del certificado abierto en Leaf Certificate Expiry configurado en 10 days](https://proxyman.com/docs/assets/Screenshot%202026-08-28%20at%2014.28.54.jpg)

* Referencia: [https://github.com/ProxymanApp/Proxyman/issues/2751](https://github.com/ProxymanApp/Proxyman/issues/2751)

## Más información {#learn-more}

* [Cómo capturar tráfico HTTPS de emuladores de Android con API 35](https://proxyman.com/posts/capture_https_android_emulators)
* [Cómo capturar tráfico HTTPS de apps Flutter en emuladores de Android](https://proxyman.com/posts/Capture-https-flutter-android-emulator)
* [Captura el tráfico HTTP/HTTPS de emuladores de Android con Proxyman](https://proxyman.com/android-emulator) (sitio web de Proxyman)
