如何监控应用程序内的网络活动?

Vin*_*nyD 10 iphone netstat objective-c cfnetwork ios

我正在尝试从我正在开发的应用程序中监控iPhone上的网络活动.iOS是否支持类似netstat的命令或类似的东西,可以告诉我入站和出站连接是什么活动的?

fbe*_*rdo 10

经过一番搜索,我发现Apple的代码用于netstat.

void protopr(uint32_t proto, char *name, int af)功能中您需要的一切.

我在设备上测试并sysctlbyname("net.inet.tcp.pcblist_n",...)运行.

这应该就是你所需要的.


Yah*_*hia 2

我无法对此进行测试,但根据我收集的信息,您将必须sysctl结合使用sysctlnametomib或替代 sysctlbyname使用:

sysctlbyname("net.inet.tcp.pcblist", ...)
Run Code Online (Sandbox Code Playgroud)

和/或

sysctlbyname("net.inet.udp.pcblist", ...)
Run Code Online (Sandbox Code Playgroud)