读过去的开关

时间:2010-05-28 03:16:56

标签: cocoa

我知道有一种方法可以阅读bandwitch。

1 个答案:

答案 0 :(得分:1)

iPhone SDK中没有记录方法可以执行此操作。我很确定他们使用的是sysctl(),这是一个标准的BSD调用,所以它也必须出现在iPhone OSX上。

看到这个答案: How to get network adapter stats in linux/Mac OSX?

一个很好的问题是他们如何通过Appstore程序。我认为sysctl()是从记录到未记录的API的“中途”:SDK文档中没有提到它,但它存在于所有BSD系统中。因此Apple可能没有(或没有)过滤标准BSD调用,这就是他们让sysctl()通过的原因。

更新:我在iPhone模拟器上成功运行了这个netstat代码(目前我没有iPhone设备)。我所要做的就是注释掉#include <net/route.h>,因为它不存在于iPhone SDK中,并从此标题中复制以下定义:

#define RTM_IFINFO2 0x12

所以它比我想象的要简单。因为此代码中基本上没有函数调用不在SDK标题中,所以如果您使用此代码,Apple可能会批准您的应用程序(它们无法过滤简单常量......)。