Automatic Script for Android Emulator
How to set up capture all HTTPS Request Response from Proxyman with Automatic Script
1. What's it?
It's too complicated and error-prone if we manually override the HTTP Proxy, Install, and Trust Proxyman Certificate from your Android Emulator.
Thus, Proxyman provides a built-in script to automatically perform it in a second. You can access it from Certificate Menu -> Install Certificate on Android -> Emulator.
From Proxyman 5.15.0 or later, Proxyman can now install Proxyman certificate into the system-level Store. Make it possible to decrypt all HTTPS from Android Emulators.
2. Benefit?
1 Click to:
✅ Auto Override / Revert HTTP Proxy
✅ Automatically download, install, and trust the Proxyman Certificate at the system-level store. Can decrypt all HTTPS from your Emulators. (Available on Proxyman 5.16.0 or later)
No need network_security_config.xml
✅ Less error-prone and finishes in a few clicks
Work with Android Emulator and Android Physical Devices via `adb` (Only for Proxyman v5.19.0+)

Install Proxyman Certificate to the system-level Store.

3. How to use it?
Make sure the adb command is installed. If not, please install it
brew install android-platform-toolsOpen your Android app with Android Studio
Create a new Emulator in Android Virtual Device Manager. Make sure it's not the Play Store. Must be a Google Play API



Open Proxyman -> Certificate Menu -> Install Certificate on Android -> Emulators -> Click on the Override All Emulators button

Wait until the Terminal completes

Relaunch your Android app on Android Studio
Proxyman will capture all HTTPS data ✅
4. ⚠️ Proxyman 5.15.0 or earlier 
Proxyman 5.15.0 or earlier is only able to install Proxyman Certificate to the User level.
It means: We have to complete the next step:
In your source code:
Add res/xml/network_security_config.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>Add to AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools">
    <uses-permission android:name="android.permission.INTERNET" />
    <application
        
        <activity
            ...
        </activity>
    </application>
</manifest>5. Advance: Run the script manually
It's possible to execute the script manually in your Terminal app without granting the Automation Permission in Security & Privacy.
Script path: 
/Applications/Proxyman.app/Contents/Frameworks/ProxymanCore.framework/Resources/install_certificate_android_emulator.shFor Proxyman 51.9.0 or later
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 messagePrepare the certificate
Open the Proxyman app
Find the current IP in the Main Toolbar
Certificate menu -> Export -> Root Certificate as PEM -> Save to Desktop folder
4.1 Override HTTP Proxy and Install the Certificate to system-level Store
Proxyman v5.19.0 or later (NEW)
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 or earlier
bash /Applications/Proxyman.app/Contents/Frameworks/ProxymanCore.framework/Resources/install_certificate_android_emulator.sh all <current_ip> <port> <certificate_path>4.2 Only Override HTTP Proxy 
Proxyman v5.19.0 or later (NEW)
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 or earlier
bash /Applications/Proxyman.app/Contents/Frameworks/ProxymanCore.framework/Resources/install_certificate_android_emulator.sh proxy <current_ip> <port> 4.3 Revert HTTP Proxy 
Proxyman v5.19.0 or later (NEW)
bash /Applications/Proxyman.app/Contents/Frameworks/ProxymanCore.framework/Resources/install_certificate_android_emulator.sh --mode revertProxyProxyman v5.18.0 or earlier
bash /Applications/Proxyman.app/Contents/Frameworks/ProxymanCore.framework/Resources/install_certificate_android_emulator.sh revertProxyLast updated