在 OS X 系统偏好设置中,当我点击“网络”时,我看到“以太网”旁边有一个绿点,“AirPort”和“火线”旁边有一个红点。这是因为我在通过以太网访问网络和 Internet 时关闭了 AirPort 和 FireWire。
我需要以编程方式确定系统偏好设置中显示的这些网络服务中哪些有绿点,哪些有红点。对于以太网和 FireWire,显示状态为“已连接”或“未连接”,对于 AirPort,显示状态为“打开”或“关闭”。也许其他网络服务有其他状态标签。
我已经挑选了“/Library/Preferences/SystemConfiguration”中的所有 plist 文件,尤其是“preferences.plist”和“NetworkInterfaces.plist”。我可以在那里获得各种信息,例如位置集、网络服务顺序、代理信息(这对我的任务也很重要),但我找不到如何确定给定的网络服务是打开还是关闭——相当于显示绿点。
我也尝试过使用系统配置框架,特别是 SCNetworkConnectionGetStatus 函数,但我得到的只是无效的连接状态。
有谁知道如何实际检索此连接状态信息?
谢谢。