Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/206.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 以编程方式捕获网络流量(无根)_Android_Network Programming_Android Networking_Packet Sniffers - Fatal编程技术网

Android 以编程方式捕获网络流量(无根)

Android 以编程方式捕获网络流量(无根),android,network-programming,android-networking,packet-sniffers,Android,Network Programming,Android Networking,Packet Sniffers,我正试图找到一些资源或库,这些资源或库允许我以编程方式捕获设备的所有网络数据包的流量,无论是来自wifi还是移动网络。我相信没有必要像请求的那样让root处于这种混乱的模式,因为在play store上有一个可以捕获所有网络流量(甚至可以用MITM解密SSL)而不需要root。我根本不知道该怎么做 我的问题是:这个应用程序是如何实现这种捕获的?他们使用了什么API 感谢您的帮助。在没有root的Android中,包嗅探的实际方法是循环返回。创建并激活VPN服务应用程序将强制设备中的所有流量通过新

我正试图找到一些资源或库,这些资源或库允许我以编程方式捕获设备的所有网络数据包的流量,无论是来自wifi还是移动网络。我相信没有必要像请求的那样让root处于这种混乱的模式,因为在play store上有一个可以捕获所有网络流量(甚至可以用MITM解密SSL)而不需要root。我根本不知道该怎么做

我的问题是:这个应用程序是如何实现这种捕获的?他们使用了什么API


感谢您的帮助。

在没有root的Android中,包嗅探的实际方法是循环返回。创建并激活VPN服务应用程序将强制设备中的所有流量通过新创建的虚拟接口,该虚拟接口由用户空间应用程序管理,您将通过读取虚拟接口接收IP数据包

您可以从谷歌上查看一个简单的代码示例


你可以查看一个完整的工作示例项目

人们不应该在没有任何关于该主题的线索的情况下否决投票,也不应该为他们的否决投票提供任何理由。非常感谢,这正是我一直在寻找的。GitHub上有大量使用本地VPN解决方案的FOSS解决方案。此外,许多其他网络、VPN和WiFi工具允许您以
pcap
格式保存/获取数据包。讽刺的是,这些捕获应用程序大多会中断互联网连接,因此甚至很难调试应用程序。