我的软件依赖于与外部服务器同步。我想以编程方式检查用户的计算机(Mac OS X 10.5+)是否自动设置日期和时间,根据日期和时间中的复选框。时间系统首选项面板。
如果未选中此设置,我的软件将提醒用户我的软件可能出现问题。
我想有一种方法可以使用Cocoa库或我的软件可以打开和阅读的plist文件。
答案 0 :(得分:1)
我刚刚测试过。如果选中该复选框,则ntpd
运行。否则它不会运行。因此,只需检查ntpd
是否正在运行。
您可以直接通过外壳ps -ef
并在输出中检查/usr/sbin/ntpd
进程来检查这一点,或者您可以使用任意数量的其他方法来检测它的存在:
ntpq -c lpeers
并检查成功返回状态netstat -an
或等效内容查看是否正在侦听UDP端口123。