2016-10-05 6 views
4

Android 7を実行するNexus 5Xデバイスを使用しています。チャールズプロキシの最新の説明書を使用してプロキシをセットアップできませんでした。私は証明書をインストールしましたが、wifi設定やnugatが拡張されています。私は証明書としてチャールズを設定することができますが、私はその無線LAN(認証の問題)に接続することはできません。だから私はそれを "正しいかどうかをチェックしない"としておく。私はそれが関連しているかどうかも分かりません。チャールズSSLプロキシはクロームでは動作しますが、アプリでは動作しません

私のアプリを盗聴しようとしたときです。httpsの呼び出しがあります。SSLHandshake: Received fatal alert: certificate_unknown 同じデバイスでChromeを使用しているWebクライアントを実行すると、同じAPIへの呼び出しを読み取ることができます。

最終行はブラウザでは動作しますが、私のアプリケーションでは動作しません。他のアプリもチェックしました。同じ出力。

理由は私がここで尋ねる理由は、おそらく私はいくつかの安全でないクライアントを私のretrofit api setupに追加しなければならないからです。

+0

私は同じ問題を抱えていますソリューションを見つけることができますか? – kassim

答えて

0

チャールズでヘルプ - > SSLプロキシ - > IOSシミュレータでチャールズルート証明書をインストールを選択し、iOSシミュレータを閉じてシミュレータを再起動します。今はうまくいくはずです。ここで

1

は、Android 7にCharlesProxy作品を作るためにあなたがAPK設定する必要がある方法です

アンドロイド

アンドロイドNの時点で、あなたはそれを持っているために、あなたのアプリに設定を追加する必要がありますCharles SSL Proxyingによって生成されたSSL証明書を信頼します。これは、あなたがコントロールするアプリでのみSSLプロキシを使用できることを意味します。

チャールズを信頼するようにアプリを設定するには、アプリにネットワークセキュリティコンフィグレーションファイルを追加する必要があります。このファイルはシステムのデフォルトを無効にすることができ、アプリがユーザーがインストールしたCA証明書(チャールズルート証明書など)を信頼できるようにします。これは、アプリケーションのデバッグビルドにのみ適用されるため、本番ビルドではデフォルトの信頼プロファイルが使用されるように指定できます。

あなたのアプリへのファイルのres/XML/network_security_config.xmlを追加します。

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

次のように続いて、あなたのアプリのマニフェストには、このファイルへの参照を追加します。

<?xml version="1.0" encoding="utf-8"?> 
<manifest ... > 
    <applicationandroid:networkSecurityConfig="@xml/network_security_config" ... > 
     ... 
    </application> 
</manifest> 

ここにあなたがすることができます詳細:

https://www.charlesproxy.com/documentation/using-charles/ssl-certificates/

関連する問題