- Синхронизация времени на Android через TimeServer
- О синхронизации времени
- Синхронизация времени с TimeServer на Android
- Проблемы времени и часовых поясов в Android и пути их решения
- Как синхронизировать Android-устройства
- Синхронизация файлов различного типа
- Основные данные
- Фотографии и видеозаписи
- Google Drive
- Контакты
Синхронизация времени на Android через TimeServer
Знание точного времени очень важно в современном мире, в котором все может поменяться буквально за считанные минуты. А для решения некоторых задач могут отводиться и вовсе несколько секунд. К счастью, определение точного времени в любой точке земного шара — несложная задача. Достаточно лишь иметь под рукой любое устройство с выходом в интернет. Рассмотрим, как определить точное время на смартфонах и планшетах, работающих под управлением операционной системы Android.
О синхронизации времени
Существуют различные способы определения точного времени. Для обычных людей наиболее удобным и простым способом является использование серверов синхронизации времени (NTP-сервер). Большинство операционных систем, устанавливающихся на компьютеры и мобильные устройства, имеют встроенную функцию для работы с такими NTP-серверами. Алгоритм синхронизации внутренних часов устройства со временем на удаленном сервере достаточно прост:
- Пользовательское устройство посылает запрос на сервер синхронизации запрос, для чего используется специальный сетевой протокол — NTP (Network Time Protocol).
- В ответ на запрос сервер формирует NTP-пакет с нужными данными и отправляет его обратно на пользовательское устройство.
- Встроенная функция синхронизации обрабатывает пакет и настраивает внутренние часы устройства, используя данные из NTP-пакета.
- Высокая точность синхронизации (вплоть до одной сотой секунды, т.е. 10 миллисекунд) достигается благодаря тому, что функция установки времени учитывает задержку между и отправкой запроса и получение от сервера NTP-пакета.
Сам же NTP-сервер определяет точное время по реально (физически) существующему эталону времени. Это целый комплекс оборудования, в задачу которого входит отчет времени. В мире существует несколько эталонов времени, расположенных в технологически развитых странах, включая Россию. Атомные часы имеются в распоряжении «Всероссийского научно-исследовательского института физико-технических и радиотехнических измерений» (ВНИИФТРИ).
Синхронизация времени с TimeServer на Android
В операционных системах Android также имеется встроенная функция синхронизация времени по сети. Однако пользователи не могут ее настраивать. Т.е. система сверяет время с NTP-сервером, который, по сути, неизвестен владельцу Андроид-устройства. Также остается секретом и то, насколько точно работает базовая функция синхронизации часов в Android.
Для возможности синхронизации времени на смартфонах и планшетах под управлением Андроид существует только один выход — использование специальных приложений. Но и здесь есть свои нюансы. ОС Android запрещает сторонним приложениям изменять настройки даты и времени, что сделано в целях безопасности. Для полноценной работы приложений синхронизации времени требуется root-права. Без root-прав такие программы не могут изменять системные настройки в автоматическом режиме, однако определять точное время они все же в состоянии. В этом случае пользователю придется время от времени устанавливать время на своем Android-устройстве вручную.
Источник
Проблемы времени и часовых поясов в Android и пути их решения
Предположим, вы уже давно используете Android, а потому может показаться, что он прекрасно справляется с задачами синхронизации времени – будильники срабатывают вовремя, каких-то явных отклонений времени не наблюдается и т. д. Однако уверены ли вы полностью в том, откуда Android на самом деле получает данные о точном времени и часовых поясах? Если у вас есть хоть какие-то сомнения о том, как это работает — добро пожаловать под кат.
В Android существует две проблемы со временем: это его непредсказуемая синхронизация и необходимость в актуализации данных о часовых поясах даже в самой свежей версии ОС.
Предыстория: Android является мобильной ОС, базирующейся на ядре Linux, он спокойно подключается к интернету и, конечно же, можно предположить, что синхронизация времени осуществляется с помощью NTP, однако, это не так. Исторически сложилось, что Android был предназначен для использования исключительно в мобильных телефонах (вспомните версию 1.6). При этом только к 3 мажорной версии он обзавёлся интерфейсом для планшетов и начали́сь другие подвижки к унификации интерфейса и начинки ОС. Однако даже версии 4.4 и Android L получают сигналы точного времени теми же методами, что их получала Nokia 3310 и другие, более ранние GSM/3GPP телефоны, т. е. от вышек сотовой связи при регистрации в сети (при подключении к вышке). При этом планшеты или другие устройства без модуля связи, в принципе не имеют возможности синхронизировать время автоматически.
К великому сожалению, чтобы научить Android синхронизировать время полностью автоматически с помощью NTP нам понадобиться root доступ ибо API для точной установки времени в Android ныне отсутствует.
Приступим. Первое, что необходимо сделать, это выключить синхронизацию времени с мобильной сетью. При этом установку часового пояса я рекомендую оставить в автоматическом режиме, а отключать её стоит, только если есть гарантия, что устройство будет работать в стационарном режиме.
Далее, необходимо установить приложение ClockSync, которое и будет выступать для нас альтернативой демону синхронизации времени с помощью NTP.
На скриншотах видно, что разница с точным временем оказалась достаточно маленькой, однако, бывают разные ситуации, у некоторых время на устройстве может даже плавать туда-сюда поскольку оператор не удосужился навести порядок у себя на БС.
Убедившись, что всё работает, настроим автоматическую синхронизацию в программе ClockSync. Для повышения точности я рекомендую включить опции «Режим высокой точности» и «Только через WI-FI». Если с первой опцией всё понятно из описания в программе (см. скриншот ниже), то вторую опцию я рекомендую включить в первую очередь не из соображений экономии мобильного трафика, а из-за того, что мобильный интернет не способен гарантировать хоть сколько-нибудь стабильные задержки.
Помимо этого я рекомендую включить опцию «При включении», чтобы лишний раз не выводить устройство из глубокого сна и тем самым сэкономить энергию.
В связи с масштабными изменениями часовых поясов в РФ осенью этого года необходимо уже сейчас задуматься об актуализации информации о них на всех устройствах и если с поддерживаемыми настольными ОС проблем не возникает, то в Android даже самая свежая версия ОС содержит устаревшие данные. Для того чтобы в этом убедиться устанавливаем TimeZone Fixer и наблюдаем неприглядную картину.
Автор программы TimeZone Fixer предупреждает нас, что обновление файлов данных о часовых поясах может полностью «сломать» устройство и даже даёт рекомендации о том как обезопасить себя от дополнительных проблем, хоть случаи проблем единичные и очень специфичные — это действительно хорошая забота о простых пользователях.
Только поэтому я и внёс этот кусочек в статью, он хоть и не имеет непосредственного отношения к проблеме, но это действительно хороший пример заботы о пользователях. В то же время предупреждение насчёт версий 4.3+ вызвано лишь малым количеством отзывов о программе для устройств с новыми версиями ОС, поэтому, пожалуйста, после использования обязательно напишите о́тзыв об этом приложении.
После обновления данных о часовых поясах программа предло́жит перезагрузится, однако, я рекомендую перезагрузить устройство самостоятельно через системное меню поскольку программа осуществляет перезагрузку фактически эквивалентную reset, что, пусть и с малой вероятностью, но может привести к проблемам и потери данных.
С удовольствием отвечу на любые вопросы или внесу дополнения, которые сообщество посчитает необходимыми, однако, хочется избежать перегруженности статьи дополнительной информацией, дабы придерживаться формата компактного руководства по решению конкретной проблемы.
UPD: Эта инструкция полностью решает проблему часовых поясов только для версий младше 4.4. С версии 4.4 нужен дополнительный патчинг, пока вопрос находится на стадии исследования возможностей для создания юзер-френдли решения.
Источник
Как синхронизировать Android-устройства
Для синхронизации данных любого типа между смартфонами на Android не требуется особых знаний. Покажем, как сделать это быстро и без проблем.
Смартфоны, да и любая техника в целом сегодня развивается настолько быстро, что обновляться приходится все чаще и чаще. И телефон – это не только средство коммуникации, но и полноценный индивидуальный помощник каждого. В памяти устройства мы постоянно храним какие-то файлы: данные приложений, документы, фотографии и не только.
После замены старого смартфона на новый возникает потребность в переносе данных. Для этого нужно сначала синхронизировать устройства между собой. Ниже мы расскажем, как сделать это и сохранить личные данные, моментально перенося их на новое мобильное устройство.
Синхронизация файлов различного типа
Основные данные
Во всех смартфонах и планшетах, работающих под управлением актуальной версии Android, есть опция синхронизации данных любого типа, которая может работать автоматически. Это осуществляется с помощью вашей учетной записи Google, связывающая множество различных устройств.
Для того, чтобы синхронизировать несколько Android-смартфонов, достаточно просто войти на них в аккаунт Google:
Шаг 1. Возьмите в руки один из телефонов и зайдите в настройки системы.
Шаг 2. Перейдите в раздел «Пользователи и аккаунты» или что-то связанное с учетными записями (название может быть неточным, так как пункты в меню отличаются в зависимости от производителя смартфона и версии Android).
Шаг 3. Найдите кнопку «Добавить аккаунт» (или «Добавить учетную запись») и нажмите на нее.
Шаг 4. Выберите строку «Google» и выполните вход в профиль.
Шаг 5. После выполнения входа вернитесь на вкладку «Пользователи и аккаунты» в настройках и найдите функцию «Автосинхронизация данных». Активируйте ее. Теперь устройство будет запоминать данные приложений, в которые выполнен вход с вашего аккаунта Google, и их можно будет переносить на другие девайсы.
Шаг 6. После добавления профиля Google, в той же вкладке нажмите на строчку с названием электронной почты. Выберите строку «Синхронизировать аккаунты» и убедитесь, что синхронизация включена для всех возможных элементов («Данные контактов», «Контакты», «Google Календарь» и прочие должны быть активированы). Если же нет, сделайте это самостоятельно.
Шаг 7. Возьмите второй телефон и повторите шаги 2-6. Войдите в тот же профиль и активируйте автоматическую синхронизацию.
После выполнения шагов выше, любая личная информация (например, список контактов) будут подгружаться из серверов Google, когда вы выполните вход в свою учетную запись на новом Android-смартфоне. Таким образом все возможные данные будут переноситься между устройствами.
Фотографии и видеозаписи
Для того, чтобы фотографии и видеозаписи также переносились с одного устройства на другое, простой авторизации в единой учетной записи Google может быть мало.
Включить синхронизацию медиафайлов можно выполнив следующие действия:
Шаг 1. Возьмите устройство, на котором у вас хранятся фотографии и видеозаписи.
Шаг 2. Найдите и откройте приложение Google Фото. Если на устройстве его нет, то перейдите в официальный магазин Google Play по этой ссылке и скачайте его.
Шаг 3. На главном экране экране нажмите на значок профиля и выберите вашу учетную запись, в которой будут сохраняться копии фотографий и видео.
Шаг 4. Нажмите на кнопку «Включить» для автоматической синхронизации файлов с аккаунтом Google.
Шаг 5. Выберите настройки, установив качество фото и видео (выбирать по желанию). Для того, чтобы сохранять файлы всегда, а не только во время подключения к сети Wi-Fi, активируйте соответствующий пункт (может привести к повышенному расходу интернет-трафика). Нажмите кнопку «ОК».
Шаг 6. Повторите описанные выше шаги со вторым или несколькими другими девайсами.
Google Drive
Вся информация с устройства, которая сохраняется в учетной записи Google, хранится в облачном хранилище. Это касается данных приложений, SMS-сообщений, контента из Google Фото, журнала звонков, контактов и других различных параметров. Для того, чтобы убедиться, что все данные между Android-смартфонами будут синхронизироваться, нужно проверить настройки хранилища.
Шаг 1. Возьмите первое устройство и найдите в списке приложений «Диск» (Google Диск). Если его нет, перейдите по этой ссылке и скачайте программу из официального магазина. Запустите ее.
Шаг 2. Разверните боковое меню, пролистав свайпом вправо от левой границы экрана и перейдите в меню настроек.
Шаг 3. Откройте раздел «Резервное копирование и сброс». Убедитесь, что у вас включена функция «Загружать на Google Диск», выбрана нужная учетная запись в строке «Аккаунт».
Шаг 4. В этой же вкладке нажмите на кнопку «Google Фото» и активируйте пункт «Автозагрузка и синхронизация», если не сделали этого выше.
Шаг 5. Выберите строку «Использование моб. Интернета» и установите параметр «Без ограничений» для автозагрузки.
Шаг 6. Отключите опцию «Только по Wi-Fi», иначе данные не будут синхронизироваться при подключении к интернету посредством мобильной передачи.
Шаг 7. Вернитесь в раздел «Резервное копирование и сброс» и пролистайте вниз, отключив пункт «Передавать файлы только по Wi-Fi».
Шаг 8. Возьмите другой телефон и повторите с ним те же шаги.
Шаги 5-7 в инструкции могут привести к повышенному расходу трафика на вашем устройстве. Если вы пользуетесь интернетом в основном через Wi-Fi и имеете ограниченные ресурсы по тарифу оператора, стоит пройти мимо этих пунктов.
Контакты
Чтобы дополнительно закрепить успех и убедиться, что устройства точно будут синхронизированы, стоит проверить настройки контактов.
Для этого последовательно выполняем следующие действия:
Шаг 1. Откройте приложение «Контакты» (должно быть от Google), либо скачайте его по этой ссылке. Запустите его.
Шаг 2. Перейдите в боковое меню и откройте раздел «Настройки».
Шаг 3. Нажмите на кнопку «Настройки синхронизации Google Контактов» и выберите свою учетную запись.
Шаг 4. Проверьте, чтобы в разделе «Статус синхронизации» было включено автоматическое обновление контактов.
Шаг 5. Перейдите на вкладку ниже и активируйте функцию «Автоматически копировать и синхронизировать контакты с устройства».
Источник