所有しているデバッグアプリが JMeter には到達するものの HTTPS を拒否する場合は、その録音用 CA をアプリのトラスト設定に渡します:

  1. 実際の JMeter HTTP(S) レコーダーを起動し、生成された ApacheJMeterTemporaryRootCA.crt を取得します。
  2. その公開 CA をアプリの raw リソースに jmeter_debug_ca.crt として置きます。
  3. このアンカーを既存のネットワークセキュリティ規則にマージします:
<network-security-config>
    <debug-overrides>
        <trust-anchors>
            <certificates src="@raw/jmeter_debug_ca" />
        </trust-anchors>
    </debug-overrides>
</network-security-config>

manifest の android:networkSecurityConfig からその XML を参照します。network_security_config.xml の場合は @xml/network_security_config を使います。

Android が debug-overrides を適用するのは android:debuggable が true のときだけで、false のときはそのセクションを無視します。user によるデバッグ専用のアンカー元は、ユーザーがインストールした CA を意図的に信頼するワークフロー向けのもう一つの選択肢です。

ブラウザーの信頼だけではアプリの方針は決まりません。端末は引き続きレコーダーに到達できる必要があり、アプリのネットワーククライアントがその proxy を使う必要があります。独自スタックでは、それ自体が対応するトラスト入力を必要とする場合があります。

関連記事