android7之后 只信任系統根證書, 用戶安裝的證書只能在瀏覽器中使用, 其他APP使用不了,線上定位問題(或者想參考別人的接口設計)極不方便
小米手機root需要開發版 而只能通過官方內測申請才能刷開發版, 流程審批都要好幾天,能不能批下來還不好說
華為直接禁用root了
手機在不root時,如何安裝系統根證書呢?
使用avd? 這個是X86CPU用的, 市面APP一般是arm的,AVD里面安裝不了 要改代碼 還是只能用在自己開發的APP
vmos android內的虛擬機,自帶root
先裝證書

用 openssl x509 -subject_hash_old -in 證書名加后綴
計算出hash值,並將后綴設為0
拷貝證書文件到/system/etc/security/cacerts
, 可以使用ES文件管理器
adb -s 192.168.1.111:5666 push D:/2094d12a.0 /storage/sdcard/
代理設置
在宿主真機上設置wifi代理不起作用,charles根本抓不到請求, 需要在虛擬機內部設置http proxy端口,
但是vmos沒有代理設置操作頁面!!! 坑了
首先在vmos內打開網絡adb
然后祭出adb神器
adb connect 192.168.1.111:5666
adb -s 192.168.1.111:5666 shell settings put global http_proxy 192.168.1.220:8888
某書的示例
嗯 這個處理方式和我用的很像啊
部分APP無法代理抓包的原因及解決方法
https://cloud.tencent.com/developer/article/1490033
不是所有的app默認都會使用系統代理 VPN就不同了
另外也可以鏈接電腦熱點,然后用wireshark抓包,就是效率低一些