2015-11-15 31 views
12

我正在使用Charles來調試我的應用程序 - android和ios。 在安全設備上安裝Charles CA之後,在安全連接上發生了一些相當奇怪的事情。Charles代理SSL連接不會顯示主機名,只有ips

在IOS上,Charles將在連接列表中顯示對主機名的請求,並且它看起來很棒。

但是,在android上,它只會顯示IP。我必須打開請求並檢查主機名頭以找出主機名 - 這很煩人。

任何方法?

回答

11

發生這種情況是因爲Android模擬器是一個虛擬機,而不僅僅是像iOS模擬器那樣的一個mac os進程。 爲了能夠使用Android模擬器查看主機名(在Android 8.0上測試),您必須轉至設置 - >網絡&互聯網 - >移動網絡 - >接入點名稱 - >單擊接入點並將代理和端口屬性設置爲您查爾斯本地地址(你可以找到它的查爾斯 - >幫助 - >本地IP地址)

UPDATE:

谷歌已對Android模擬器的最後一個版本改變了這一點。現在你必須添加一個新的APN。只要創建一個新的APN與任何名稱和APN設置爲「HTTP://」,代理爲10.0.2.2和端口8888

+2

了最新的Android SDK模擬器,除了在上面的回答的步驟,您需要禁用打開和關閉飛行模式以使接入點代理生效。這是由於最新sdk AFAIK – user756829

+0

中的一個錯誤/問題,爲什麼點擊接入點名稱後,設置全部被禁用?沒有辦法編輯代理和端口屬性 – DiveInto

+2

谷歌已經改變了最新版本的Android模擬器。現在你必須添加一個新的APN。只要創建一個新的APN與任何名稱和APN設置爲「HTTP://」,代理爲10.0.2.2和端口8888個 –