2014-10-16 57 views
2

我們只是將所有其餘的API從昨天的http切換到http。正因爲如此,我目前無法在我的設備上攔截Charles的其他電話(前一段時間我可以做得很好),但是只有與我的單元測試。未能通過Charles Web Proxy和android連接到SSL,但僅用於測試

當我運行該應用程序時,我可以看到Charles中的所有api調用都很好(我在我的android設備上配置了Charles證書)。然而,當我在Android Studio中運行單元測試,我看到在概述以下爲每個API調用:

No request was made. Possibly the SSL certificate was rejected. 
You may need to configure your browser to trust the Charles CA SSL certificate. 

我使用的是查爾斯3.9.2。

回答

0

如何使用查爾斯用java:

  1. 導出證書查爾斯 'SSL Proxying->另存查爾斯根證書'。將證書保存爲.pem

  2. 將證書添加到JVM。修改並運行命令:

keytool -import -alias charles -file <PATH_TO_CHARLES_CERTIFICATE.pem> -keystore $JAVA_HOME/jre/lib/security/cacerts -storepass changeit

附: keytool是JDK的一部分,通常它屬於$ JAVA_HOME/Contents/Home/bin/