使用Charles Proxy调试您的Android应用

有时,当我们调试或检查任何Android App中的任何流程时,我们只需要查看其中正在发生什么API调用即可。
当然,如果要打开Android Studio,没有什么能比IDE的调试器更好的了,只需查看日志并完成(我们将了解正在发生的API调用以及有关这些API请求/响应的所有详细信息,等等)。
但是,如果我们没有打开IDE并仍想检查所有这些详细信息,该怎么办?
在这种情况下,我们有很少的选择可以帮助我们调试应用程序:-
1.如何将Charles用作Android开发人员/质量检查人员来调试应用程序
让我们经历一下设置它的过程,并从头开始设置Charles和各自需要的东西。
步骤1-打开https://www.charlesproxy.com/并下载Charles应用程序。

成功下载后,安装此应用程序。
第2步-打开Charles应用
而且我们将开始看到一些基本流量,因此要避免发生这种情况,而只将注意力集中在要查看/调试的内容上,只需选择该Proxy
选项并取消选中它即可macOS Proxy
。因此它将停止显示通过我们的mac的所有流量。
步骤3-编码时间,
对于此博客,我们有一个示例应用程序,该应用程序使用很少的API来获取一些数据。我们希望看到这些API及其响应等。
为此,我们需要使用network_security_config.xml
如果您已经在应用程序中使用SSL Pinning,则将拥有此文件;如果没有此文件,则只需在folderxml
内创建一个文件res
夹,然后添加具有该名称的文件。
并添加此代码。
<!-适用于查尔斯代理->
<debug-overrides>
<trust-anchors>
<!-信任用户仅在可调试时添加了CA->
<certificates src =“ user” />
</ trust-anchors >
</ debug-overrides>
<!-结束查尔斯代理代码块->
添加此代码后,该文件将如下所示。
使用此与Charles代理相关的代码,如果您也想使用它SSL Pinning
,也可以在此处添加该代码;如果您是新手,SSL Pinning
请在此处查看我的详细帖子。
Android中的SSL固定和漏洞处理。
作为Android开发人员,我们的应用对我们来说就像婴儿一样,显然,我们需要逐层保护我们的应用,或者…
medium.com
并在AndroidManifest.xml
文件中添加此文件
步骤4-打开设备,长按Wifi,然后单击“修改网络”。
在手机/仿真器设置中,转到wifi,点击修改网络(按照视频中的以下步骤操作)
现在我们需要端口代码和代理主机名,如何获取它,在Charles应用程序中单击,Help
然后从下拉列表中单击SSL Proxying
并选择Install Charles Root Certificate on a Mobile device.
然后它将向我们显示这些详细信息:
在这里,我们拥有了两个要添加到移动设备中的值
港口— 8888
主机-192.168.43.222
填写这些详细信息,然后单击保存。
第5步-在设备上安装Charles代理证书。
打开任何Web浏览器,然后输入以下内容: chls.pro/ssl
您会看到警告提示,下载并打开它,
然后另存为Charles-proxy
,然后单击确定。
现在,已安装Charles Proxy证书。
第6步-让我们喝一口果汁,然后立即进行调试:)
让我们按照以下步骤调试视频。