Синхронизация времени на андроид

Этого вопроса я уже касался ранее, в заметке Android калибровка GPS, ускорение захвата спутников после холодного старта, повышение точности GPS по сути до возможного предела «железа». Повторюсь коротко. Методы, которые использует Android для синхронизации времени, или очень неточны (по сети оператора — в лучшем случае ошибка будет несколько секунд, что даст замедление старта GPS в 2-3 раза), или малоприемлемы — по GPS спутникам, это колоссальный расход энергии, да и не будет работать нигде, кроме как на улице. Первым вариантом решения вопроса была программа ClockSync (см пункт 1 заметки, ссылка на которую выше). Но можно получить еще более высокую точность, и обойтись без установки дополнительных программ, если у Вас рутованный телефон и на нем установлена BusyBox.
Решением проблемы станет «родной» линуховый ntpd. К сожалению в BusyBox входит очень упрощенный его вариант (родной линуховый позволил бы обеспечить точность в десятки миллисекунд в сутки даже когда нет возможности сделать синхронизацию по сети, за счет «коррекции дрифта»), так что будем использовать что есть.
Запускаем root explorer. Заходим с его помощью в каталог /system/etc/init.d (если у Вас init.d каталог еще не создан — создайте, и не забудьте нажать кнопочку справа сверху, разрешающую запись — иначе ничего не выйдет).
Создаем новый файл, и называем его 07userini.
Меняем его разрешения, через меню root explorer, вызываемое «по долгому клику» на файл (по короткому будет вызвано другое — оно нам не нужно). Ставим галочки «чтение» для всех, «запись» оставляем только для владельца, и «выполнение» тоже для всех.
Снова по длинному клику вызываем меню, и выбираем «Открыть в текстовом редакторе».
Теперь вписываем само содержание файла запуска:
———-
#!/system/bin/sh
/system/bin/logwrapper /system/bin/ntpd -N -p 92.249.120.2 -p 78.152.160.1
———-
Жмем кнопку меню, потом «Записать и выйти».
Удалите образовавшийся файл с тем же именем, но с расширением .bak
Теперь можно проверить что все сделали правильно. (а если уверены что все сделали правильно — можете не проверять). Для проверки нам понадобится терминал. Запускаем его, заходим в каталог cd /etc/system/init.d, запускаем комманду ./07userini
Она должна отработать, не выдав никаких сообщений об ошибках.
Теперь набираем комманду «ps | grep ntp», enter.
В ответ должны увидеть строку, в конце которой будет: /system/xbin/ntpd
Все готово — можно перезагружаться.
Да, с ядром ThunderZap, после перезагрузки, может возникнуть завис. Подождите минутки 3, если само не уйдет в повторную перезагрузку — выньте батарею, и снова включите. Оно снова запустится, потом подумает с минуту, перезагрузится. После этого все точно готово. Указанные приколы с «зависом» — особенности ThunderZap с включенным SWAPом, могут возникать после любого редактирования системных параметров и перезагрузки, и не имеют никакого отношения к данному конкретному вопросу.
*Предложенный метод запуска подходит только если у Вас «кастомное» ядро, поддерживающее init.d. Если у Вас стоковое — найдите на Маркете какое нить приложение, которое запускает произвольные программы после старта системы, и используйте его для запуска демона.
PS Циферки в конце комманды, после комманды -p, в моем случае -p 92.249.120.2 -p 78.152.160.1 — это IP адреса ближайших NTP серверов. Можно вписать пул, чтобы система сама выбирала, но тогда точность упадет. Как выбрать подходящий конкретно для Вашей страны и региона NTP сервер, я описал ранее в заметке http://vyacheslav.blogspot.com/2013/07/android-gps-gps.html#more, см П1. Те что использовал я, дают наилучший результат для Киева.
PPS Эта программа займет в памяти гдето 150 килобайт, или 0,15 мегабайта. Для сравнения, типичная программа «Android» зангимает от 10ти мегабайт и выше. Так что этим можно вообще пренебречь. Время когда проверять, программа выбирает автоматически, исходя из статистики предидущих коррекций, и вычисляя какой уход часов конкретно у Вашего аппарата, и исходя из этого меняя частоту синхронизации. Паеты махонькие, так что трафика будет брать совсем немного.
PPPS Впечатление от работы ntpd. очень положительные. Если ранее, при использовании ClockSync, я изредка, обнаруживал что расхождение достигает 250 миллисекунд, и это через 20 минут после проведенной ClockSync синхронизации, то сейчас количество таких «казусов» снизилось раз в 10. Плюс отсутствие периодического запуска «нативной Андроидной» ClockSync, «кушающей» мегабайты памяти.

Механика

За точность хода в механических калибрах часов отвечает специальная сбалансированная спираль, которая в разных моделях имеет разную степень натяжения и частоту колебаний (2.5-5 колебаний/секунду). Чем ниже положенной частота колебаний, и чем меньше момент инерции баланса, тем сильнее отклонение от эталонного времени.

Особенно четко это проявляется в часах с мелким калибром механизма – большинство даже новых миниатюрных механических часов (чаще, дамских) дают суточное отклонение от точного времени до 1-1.5 минут.

Механические часы неизбежно начинают спешить, если у них:

  • маленький корпус, а значит – небольшой размер балансира и пружины завода, влияющие на балансовую энергию, развиваемую пружиной момента;
  • соотношение трения/балансовой энергии изменяется в пользу трения (качество запчастей и их износ);
  • активная реакция на смену внешних температур (влияют на размер баланса, и жесткость спирали и волоска балансира);
  • повышенная чувствительность к гравитационным силам Земли (сила тяжести и положение часов в пространстве).

Механические часы изменяют точность хода также от степени взведенности/распускания пружины: постепенно распускаясь, она передает балансиру все меньший импульс, снижая амплитуду колебаний и поворачивая его на все меньший угол. Запомните, чем меньше завод пружины, тем больше спешат ваши часы!

Кроме того, вам достаточно некоторое время подержать часы заводной головкой вниз, и они начнут спешить на 40 секунд в сутки (а на опущенной руке они большую часть времени находятся именно в таком положении!). Если на ваших часах нет надписи «Ajusted for 6 positions» («Точность в 6-ти положениях»), вы будете теряться в догадках, почему ваши часы спешат.

Износ узлов спускового механизма часов, загустевание смазки, намагничивание балансового волоска или его на него попало масло (при попытке самостоятельно смазать механизм) – все этот также заставляет часы спешить!

Как решать эту проблему? Спешащие механические часы поддаются корректировке и устранению неточности хода. Прежде всего, покупать нужно часы с хорошо продуманной конструкцией калибра и тщательной сборкой.

В случае нарушения хода – вам поможет часовая мастерская, которая:

  • проверит механизм на качество запчастей (точность изготовления и чистота обработки колес, осевых цапф, трибов) и износ механизма;
  • отрегулирует трение узлов и запчастей, отбирающее энергию балансира;
  • очистит волосок балансира и отрегулирует его длину;
  • отрегулирует работу улиточной фузеи – механизма, регулирующего поджим пружины балансира.

​Кварцевые часы

Устройство кварцевых часов универсальнее и надежнее, чем у механических калибров, однако и они имеют привычку спешить. Связано это с:

  • Частотой генератора импульсов (для стандартных – 32 кГц, для высокоточных – 1 МГц), от которой зависит уровень потребление энергии батареи. Обычным часам батарейки хватает на 2-3 года, высокоточным – всего на год. Выбирайте часы с генератором, имеющим частоту 144 кГц – в них обеспечена высокая точность хода и минимальное энергопотребление (10 лет на одной батарейке).
  • Состоянием кристалла кварца, который со временем «стареет» и изменяет резонансную частоту.
  • Зарядом батареи питания, который со временем снижается и перестает соответствовать требованиям механизма часов. Если в часах встроена функция хронометра, батарея «садится» намного быстрее.
  • Температурными перепадами и попаданием влаги внутрь корпуса, что воздействует на кварцевые калибры так же, как и на механические.

Точность хода кварцевых часов регулировать сложнее, чем у механических аналогов, да и требуется коррекция реже. В случаях, когда недорогой «кварц» фатально спешит, его проще поменять – цены позволяют, а когда спешат дорогие кварцевый часы – можно воспользоваться встроенным конденсатором подстройки. Кстати, более дорогие кварцевые часы – более ремонтопригодны.

В некоторых кварцевых калибрах присутствует механизм радиоконтроля, который улавливает точные сигналы времени от специального передатчика и автоматически подстраивает ход часового механизма. Проблема лишь в том, что в России такие передатчики не принимают, и эта опция у нас пока бесполезна.

Стоит отметить, что если вам понадобится срочно продать элитные часы, то любая скупка часов отнесется к точности их хода с большим вниманием – хронически спешащие калибры потребуют вмешательства специалистов. Это – статья расходов, а значит, такие часы, даже если они золотые или платиновые, изрядно потеряют в цене при выкупе.

Хотите продать элитные часы в Москве выгодно и дорого? Позаботьтесь о точности их хода заранее, и ломбард часов Таймер выкупит их у вас за реальную стоимость! Звоните — 8 (495) 790-83-80, и мы предложим вам выгодные условия!

Настройка приложения ClockSync

Итак, давайте запустим программу и проверим отклонение текущего времени на мобильном устройстве от времени на серверах синхронизации.

Настройка приложения

Как видите, отклонение есть, пусть и небольшое. Разница во времени указана в строке “Смещение”. Следовательно, часы гаджета надо немного подстроить. Но перед этим предлагаем вам ознакомиться с теми возможностями, которые предлагают нам разработчики ClockSync. С помощью контекстного меню открываем настройки приложения.

Установки в меню

Прежде всего, мы советуем вам включить автоматическую синхронизацию времени, отметив галочкой соответствующий пункт. Обращаем ваше внимание на то, что пользователю дается право самостоятельно указывать сервер синхронизации. Но делать это стоит только в том случае, если вы абсолютно уверены в своих действиях.

Разработчики учли предыдущие пожелания интернет-сообщества и снабдили ClockSync возможностями записи выполненных операций – вы в любой момент можете просмотреть журнал работы программы в пункте “История и статистика”.

История и статистика

Двигаемся далее. Опция “Определять часовой пояс”. Это может пригодиться тем из вас, кто много путешествует. Зачем тратить личное время на корректировку часов при перелете из одной страны в другую? Пусть этим занимается “сообразительный” гаджет!

Часовой пояс

Как мы отмечали уже в начале статьи, ClockSync настоятельно просит у пользователя root-доступ, но приложение вполне неплохо справляется со своими обязанностями и без него. Достаточно лишь указать необходимый режим работы в настройках программы.

Выбор режима работы приложения

Ну, а в самом конце списка возможностей – чисто косметические пункты: стоит ли оповещать вас о том, что время синхронизировано или нет, стоит ли отключать экран устройства во время работы программы, в какую цветовую гамму окрасить приложение и так далее.

Настройки цвета

На этом краткий обзор настроек ClockSync мы и завершим. Пришло время синхронизировать наши мобильные часы. Переходим на основной экран программы и видим, что смещение по времени никуда не делось. Открываем вспомогательное меню и выбираем пункт “Синхронизировать”.

Синхронизация

В виду того, что наше устройство “рутировано”, приложение запросит разрешение на получение неограниченного доступа к системным функциям. Разрешаем.

Доступ к функциям

По истечении нескольких мгновений, цифровые часы подопытного гаджета окажутся синхронизированными, и внутреннее время системы совершенно не будет отличаться от эталонных значений на сервере синхронизации.

Значения времени синхронизации

На этом все. Смеем надеяться, что мы сумели убедить вас, что для операционной системы Android синхронизация времени – это процесс несложный и очень необходимый.

>Программа для синхронизации на Android: Видео

>Как получить ROOT права: Видео

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *