【发布时间】:2015-09-24 21:36:24
【问题描述】:
我需要监控设备上的所有网络活动,作为我的应用程序的一部分,而不是出于调试目的。 This post 谈论使用 TCP 转储,但一些答案表明这需要 root。没有一个答案能真正解释您将如何在应用程序中执行此操作。
我知道从应用程序内部访问所有网络流量是有可能的,因为像Network Connections 这样的应用程序可以显示正在访问的所有 IP 地址,以及哪些应用程序正在访问它们。
有谁知道我需要使用哪些 API、权限等才能在我的应用中获取此类数据?
【问题讨论】:
-
如果用于调试,则取决于您使用什么来传输数据。 HttpUrlConnection、HttpClient、OkHttp。您通常可以很容易地记录所有经过这些处理的数据。
-
澄清一下,我想监控设备上的所有网络活动,而不仅仅是来自我的应用程序,我希望它能够暴露给最终用户,而不仅仅是用于调试。我认为另一个用户所做的编辑导致不太清楚(尽管总体上很有帮助!)
标签: android networking