是否可以监听/监视某个应用程序的网络活动?

我有一个应用程序,但我不知道它从哪里获取图像。我尝试用Google搜索某个应用程序以侦听其他应用程序的连接,但没有找到任何连接。我正在从开发人员菜单中寻找与Google Chrome的“网络”标签相似的功能。

我已将Nexus 4植根于4.2.2。

#1 楼

操作系统监视器按应用列出网络连接:

操作系统监视器和连接跟踪器列出了连接(来源:Google Play;点击图片放大)

如您所见,操作系统Monitor列出所有连接,并列出“拥有”该连接的相应应用程序。这应该使您能够查看可疑应用程序连接到的所有服务器。还有其他具有相同功能的应用程序,例如连接跟踪器显示在第二个屏幕快照中。

如果您确实需要完整的URL,则上面的内容不会带您到那里(两个应用程序都使用类似于netstat的方法,该方法仅显示主机)。相反,您可能想看看例如tPacketCapture,它“嗅探”您的网络流量(不需要root),并将协议保存在所谓的.pcap文件中。这些可以再次通过例如读取。鲨鱼阅读器。

评论


我都无法真正获得连接的URL,否则就找不到位置了。操作系统监视器崩溃。

– naf
13年4月11日在11:56



“ OS Monitor崩溃”必须表示您正在运行JellyBean(已知问题,他们正在对此进行操作)。不,两个应用程序似乎都使用netstat,它不会显示完整的URL,而只是显示服务器。由于您没有指定确切的目标,因此我显然将这部分误解为“检查服务器的位置”。如果您确实想要完整的URL,则可以查看日志(logcat,也许放在其中),或者需要“数据包嗅探器”。

– Izzy♦
13年4月11日在12:02

#2 楼

我一直在使用Packet Capture应用程序,对我来说,它比在Android上设置“ wireshark”要简单。

该应用程序是免费的,不需要root访问权限,但可能会要求安装用户证书解密SSL连接(如应用页面中所述,它使用的是MITM技术;如果您不想了解SSL连接的内容,则无需安装它)

用法


打开“数据包捕获”应用程序
点击“播放”(绿色三角形)图标开始捕获
,当它处于活动状态时,打开要监听其网络活动的应用程序
等待,直到该应用程序完成其网络操作
切换到Packet Capture应用程序,然后点击“停止”(红色正方形)图标以停止捕获
通过点击其条目打开日志


评论


当我在Android R上运行Packet Capture时,它仅显示白屏,该应用程序甚至无法打开。还有其他选择吗?

–基德布拉
20年7月12日在13:57