Как я могу программно определить, установил ли пользователь Mac свой «автоматический выбор даты и времени»? - PullRequest
1 голос
/ 02 февраля 2012

Мое программное обеспечение зависит от синхронизации с внешними серверами.Я хотел бы программно проверить, устанавливает ли компьютер пользователя (Mac OS X 10.5+) дату и время автоматически, согласно флажку на панели системных настроек «Дата и время».

Если этот параметр не установленмое программное обеспечение будет предупреждать пользователя о потенциальных проблемах с моим программным обеспечением.

Я мог бы предположить, что есть либо способ сделать это с помощью библиотеки Какао, либо файл plist, который мое программное обеспечение может открывать и читать.

1 Ответ

1 голос
/ 03 февраля 2012

Я только что проверил.Если флажок установлен, ntpd запускается.В противном случае это не работает.Так что просто проверьте, работает ли ntpd.

Вы можете проверить это непосредственно, выдав значение ps -ef и проверив наличие /usr/sbin/ntpd процесса в выходных данных, или вы можете использовать любое количество других методов.чтобы обнаружить его присутствие:

  • Запустите ntpq -c lpeers и проверьте успешное состояние возврата
  • Проверьте с помощью netstat -an или эквивалентного, чтобы узнать, прослушивает ли что-нибудь UDP-порт 123 на номер.*
  • Отправьте пакет UDP самостоятельно на порт 123.0.0.1 и посмотрите, успешен ли он.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...