Часы в строке состояния. Проблемы времени и часовых поясов в Android и пути их решения

12 августа 2014 в 17:07

Проблемы времени и часовых поясов в Android и пути их решения

  • Системное администрирование
  • Tutorial

Предположим, вы уже давно используете Android, а потому может показаться, что он прекрасно справляется с задачами синхронизации времени – будильники срабатывают вовремя, каких-то явных отклонений времени не наблюдается и т. д. Однако уверены ли вы полностью в том, откуда Android на самом деле получает данные о точном времени и часовых поясах? Если у вас есть хоть какие-то сомнения о том, как это работает - добро пожаловать под кат.


В Android существует две проблемы со временем: это его непредсказуемая синхронизация и необходимость в актуализации данных о часовых поясах даже в самой свежей версии ОС.

Предыстория: Android является мобильной ОС, базирующейся на ядре Linux, он спокойно подключается к интернету и, конечно же, можно предположить, что синхронизация времени осуществляется с помощью NTP , однако, это не так. Исторически сложилось, что Android был предназначен для использования исключительно в мобильных телефонах (вспомните версию 1.6). При этом только к 3 мажорной версии он обзавёлся интерфейсом для планшетов и начали́сь другие подвижки к унификации интерфейса и начинки ОС. Однако даже версии 4.4 и Android L получают сигналы точного времени теми же методами, что их получала Nokia 3310 и другие, более ранние GSM/3GPP телефоны, т. е. от вышек сотовой связи при регистрации в сети (при подключении к вышке). При этом планшеты или другие устройства без модуля связи, в принципе не имеют возможности синхронизировать время автоматически.

К великому сожалению, чтобы научить Android синхронизировать время полностью автоматически с помощью NTP нам понадобиться root доступ ибо API для точной установки времени в Android ныне отсутствует.

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

Скриншот окна настроек «Настройки -> Дата и время» версии Android 4.x:

Далее, необходимо установить приложение ClockSync , которое и будет выступать для нас альтернативой демону синхронизации времени с помощью NTP.

Скриншоты окна программы ClockSync до синхронизации (слева) и после (справа):

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

Убедившись, что всё работает, настроим автоматическую синхронизацию в программе ClockSync. Для повышения точности я рекомендую включить опции «Режим высокой точности» и «Только через WI-FI». Если с первой опцией всё понятно из описания в программе (см. скриншот ниже), то вторую опцию я рекомендую включить в первую очередь не из соображений экономии мобильного трафика, а из-за того, что мобильный интернет не способен гарантировать хоть сколько-нибудь стабильные задержки.

Немного подробнее о точности:

Всё ещё распространённый мобильный интернет 2-го (GPRS/EDGE) в принципе не в состоянии обеспечить стабильные задержки при передаче. Даже интернет 3-го (3G) и, в некоторой мере, 4-го (LTE/LTE-advanced) поколений при сильной загрузке сети или каналов связи между БС, что является типичной ситуацией для крупных населённых пунктов, не может гарантировать стабильные задержки. Поэтому даже с аппроксимацией конечная точность установки времени может быть хуже долей секунд и даже легко достигать нескольких секунд.

Скриншот настроек автоматической синхронизации в ClockSync:

В связи с масштабными изменениями часовых поясов в РФ осенью этого года необходимо уже сейчас задуматься об актуализации информации о них на всех устройствах и если с поддерживаемыми настольными ОС проблем не возникает, то в Android даже самая свежая версия ОС содержит устаревшие данные. Для того чтобы в этом убедиться устанавливаем TimeZone Fixer и наблюдаем неприглядную картину.

Скриншот программы TimeZone Fixer, запущенной на Android 4.4.4 (прошивка Cyanogenmod от 4 августа 2014), на котором хорошо видно, что данные в прошивке неактуальные:

Немножечко здравого беспокойства и заботы о пользователях:

Автор программы TimeZone Fixer предупреждает нас, что обновление файлов данных о часовых поясах может полностью «сломать» устройство и даже даёт рекомендации о том как обезопасить себя от дополнительных проблем, хоть случаи проблем единичные и очень специфичные - это действительно хорошая забота о простых пользователях.

Только поэтому я и внёс этот кусочек в статью, он хоть и не имеет непосредственного отношения к проблеме, но это действительно хороший пример заботы о пользователях. В то же время предупреждение насчёт версий 4.3+ вызвано лишь малым количеством отзывов о программе для устройств с новыми версиями ОС, поэтому, пожалуйста, после использования обязательно напишите о́тзыв об этом приложении.


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

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

UPD: Эта инструкция полностью решает проблему часовых поясов только для версий младше 4.4 . С версии 4.4 нужен дополнительный патчинг, пока вопрос находится на стадии исследования возможностей для создания юзер-френдли решения.

Приветствую вас, уважаемые читатели и почитатели Helpix. Сегодня вашему вниманию я представляю твик для чистого Android - GravityBox версии 3.5.7 для Android 4.2 (для 4.4 и 5 свои версии) от разработчика C3C076.

Приложения для украшательства графического интерфейса операционной системы всегда были, есть и будут... есть. Есть ресурсы. Но тем не менее спрос на них, равно как и предложение, не иссякает. В своё время Android подавался под соусом полной настраиваемости GUI под вкусы конечного потребителя - нас с вами. На сей момент времени (2015-й год на дворе был с утра) приложений для украшения и перевоплощения Android очень, ну просто очень много. Изменить можно всё, а не просто поменять картинку на рабочем столе.

А ещё имеют место быть различные приложения-твики для оптимизации работы Android (вообще твики есть для любых ОС, но мы-то пока что говорим про Android). Стоковый Android не блещет всеми необходимыми нам и желаемыми нами настройками.

Многие производители смартфонов и планшетов, а особенно крупные (Samsung, Sony, LG, Lenovo, HTC и др.) уже давно пошли по пути разработки своих собственных, якобы уникальных пользовательских интерфейсов для Android. Приобретаешь, к примеру, смартфон Samsung и получаешь TouchWiz. А вместе с HTC в нагрузку идёт Sense. Lenovo на свои аппараты ставит, вы не поверите, Lenovo Launcher (интересно, это амбициозное название или просто фантазии не хватило для другого названия?). Фирменный пользовательский интерфейс, конечно, даёт пользователю гораздо большие возможности по настройке, а также более приятный и красивый (спорный момент) внешний вид. Но всё ли вам нравится в фирменной прошивке? Или кое-что вы не отказались бы поменять? Но, как известно, всем не угодишь. А производители имеют склонность делать свои прошивки (лаунчеры, пользовательские интерфейсы) не только эффективными, но и эффектными, что не всегда на пользу.

Кроме фирменных прошивок есть так называемые кастомные или неофициальные прошивки. Смысл один, но предпосылки диаметрально противоположные. Фирменные прошивки идут от производителя и что-то своё нам навязывают. Кастомные прошивки - это кустарные поделки от энтузиастов (одиночек или небольших групп), рассчитанные на потребности обычных пользователей. Сами энтузиасты - такие же пользователи как и мы, только знающие и умеющие чуть (или не чуть) больше нас. В плюсах неофициальных прошивок - множество дополнительных функций (полезных и косметических) и программ, зачастую root-права, а также скорость работы и прочее тому подобное. Но и глюки нередки, чего уж там скрывать.

Вот такими хитросплетениями мыслей я подвожу вас к теме сегодняшнего отзыва. Ведь не обязательно перепрошиваться, можно установить GravityBox и изменить стоковую (и не только стоковую) прошивку до неузнаваемости. Полной неузнаваемости как по внешнему виду, так и частично по функционалу. Можно избирательно настроить прошивку вашего устройства так, чтобы она удовлетворяла именно вашим вкусам, предпочтениям и желаниям, а не вкусам дядей из Samsung, Lenovo, LG, Google и остальных.

Что может GravityBox? Стоит ли выделка овчинки? Ведь устройство придётся рутовать, без этого никак. Перечень возможностей GravityBox довольно широк и велик, достаточно взглянуть на главную форму:

То есть можно:

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

    Как видите, наворотить можно таких делов, что закачаешься! Или упадёшь. Упадёшь с ног от неожиданности или упадёшь духом от вида кирпича, который придётся теперь перепрошивать для оживления. Поэтому я повторю разработчика: не устанавливайте GravityBox до тех пор, пока не сделаете полный бэкап системы. Сделал бэкап - гуляй смело.

    Итак, кидаемся в пучину настроек и режимов. Но начнём с исходных данных, то есть с нашего подопытного. Это Lenovo P780 с Android 4.2.1 на борту и установленным поверх Lenovo Launcher.

    Следует заметить, что работа GravityBox не гарантируется на Samsung TouchWiz, HTC Sense, MIUI и LeWa. Не гарантируется, но и не запрещается. Я пробовал ставить GravityBox на планшет Samsung 3 Lite : многие функции не заработали, но и многие почувствовали себя как дома (особенно настройки строки состояния, веерного меню и панели навигации). На некоторых устройствах GravityBox может и не запуститься даже. Lenovo Launcher ничего противопоставить GravityBox не сумел и сдался на милость победителя практически по всем позициям.

    И ещё. Вы же не забыли? Помните, что всё это

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

    Настройки экрана блокировки

    В разделе "Фон экрана блокировки" настраиваем, конечно же, фон экрана блокировки. Заполнение цветом, стандартные (с рабочего стола) и пользовательские обои, последний экран в качестве обоев, отключение тени экрана блокировки - всё это выбирается здесь. Всё работает, только последний экран в качестве обоев на экране блокировки мне не понравился, потому что слишком долго думает (пока сделает скрин, пока применит его и т.д.).

    Раздел "Кольцо разблокировки" более интересен. И интересен пункт "Ярлыки кольца разблокировки".

  • Бывает, что часы на устройстве с Android пропадают, например, после обновления прошивки. Вернуть их на рабочий стол и обычно труда не представляет, так как в большинстве случаев виджет лишь перестает отображаться на дисплее, оставаясь в памяти устройства. Расскажем далее, как вернуть часы на экран Андроид или при необходимости инсталлировать новые из магазина приложений Google.

    Как вернуть установленный виджет

    Если вы удалили случайно часы или они пропали, попробуйте вывести их на экран самым простым способом:

    Если приложение с виджетом было вами удаленно, ознакомьтесь далее, как установить аналогичное из Google Play.

    Виджеты с часами

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

    Прозрачные часы и погода

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

    • наличие разных красивых и информативных виджетов размеров 2х1, 4х1-3, 5х3;
    • широкий выбор тем оформления, обложек, шрифтов;
    • отображение помимо точного времени другой важной информации — о погоде, направлении ветра, влажности и давлении, заряде батареи, календарных событиях и т. д.

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

    1. Нажмите пальцем по отображению времени на экране, что откроет окно настроек.
    2. Перейдите в раздел «Оформление», затем в «Расширенные настройки».
    3. Снимите галочки напротив пунктов отображения информации о текущем местоположении, системной информации, заряде батареи и отметьте чекбокс рядом со строчкой «Скрыть погоду».

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

    Sense Flip Clock & Weather

    Этот часовой виджет отображения времени и даты подойдет пользователям, которым нравятся часы в стиле Flip Clock с перелистывающимися страницами. Особенности утилиты:

    • выбор виджетов разных размеров — 4х1, 4х2 и 5х2;
    • реализована анимация перелистывания;
    • выбор различных скинов и отображения значков;
    • местоположение определяется автоматически, что позволяет сообщать пользователю наиболее точный прогноз.

    Отображение погоды здесь также при необходимости отключается, после чего на экране будут только красивые ретро-часы. Также можно протестировать другие подобные утилиты:

    Часы на экран блокировки

    Если есть необходимость изменить установленный экран блокировки таким образом, чтобы на нем отображался крупный циферблат, то в этом случае можно порекомендовать «Светящиеся Часы Комод». Утилита с таким странным названием бесплатна, не требует настройки и не показывает на экране блокировки никакой рекламы.

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

    Многие владельцы стремятся сделать свое устройство уникальным. Они стремятся приобрести оригинальный чехол Мейзу М3 или модный аксессуар для своего планшета. Другие сосредотачиваются на программном обеспечении. Так например, некоторые Андроид пользователи хотят скрыть часть из информационных сообщений на главном экране и не могут найти способ, чтобы скрыть все эти уведомления и значки в строке состояния. Есть простые способы, чтобы скрыть и отключить уведомления приложений в Android , но как скрыть иконки из строки состояния?

    Сегодня, в этом руководстве мы покажем вам, как вы можете сделать это легко используя дополнение Statusbar Icon Hider. Создание этого модуля заслуга одного из членов сообщества XDA. С помощью этого модуля, вы можете выборочно включить или отключить элементы в строке состояния — часы, индикатор заряда батареи, уровень сигнала сети сотовой связи и значки уведомлений приложений. Ниже приводится руководство, которое вы можете использовать на вашем Android, чтобы скрыть значки в строке состояния.

    Сначала установите Xposed Framework на вашем Android, после этого скачайте Statusbar Icon Hider на мобильный или планшет. Теперь запустите инсталлятор Xposed на вашем Android и включите приложение из модульной секции, затем перезагрузите устройство, чтобы завершить установку.

    Как только телефон перезагрузится, откройте приложение Xposed, перейдите на страницу модульной компоновки приложения и запустите приложение Statusbar Icon Hider. Теперь вы можете легко включить/отключить следующие значки отдельно:

    • Батарея
    • Уровень сотовой сети
    • Значки уведомлений от приложений

    Чтобы включить изменения перезагрузите устройство снова, и теперь все, раннее отмеченные иконки в строке состояния вашего телефона и планшета скрыты. В будущем, если вы захотите вернуть их назад, просто откройте приложение еще раз и повторно включите их. В настоящее время приложение работает на всех стандартных ROM прошивках, но некоторые из кастомизированных прошивок не поддерживаются. Мы протестировали эту программу на Nexus 5 и приложение прекрасно работает без каких-либо проблем.

    Дополнительные материалы:

    • Если у вас есть несколько устройств, таких как смартфон и планшет, может быть достаточно трудно отслеживать определенные аспекты их работы. Например уровень заряда аккумуляторов. Существуют методы, позволяющие привязать ваш Android…
    • Сегодня, Samsung эффективно развивается. Многочисленные крутые новые смартфоны и планшеты Samsung появляются на прилавках магазинов. В основном, Samsung пользуется спросом из-за разумной цены и отличной функциональности. С точки зрения характеристик…
    • Chromecast от Google это небольшой медиаплеер для воспроизведения потокового медиа, который просто подключается к телевизору через порт HDMI, обеспечивая тем самым простой способ смотреть онлайн контент на экране телевизора. С Chromecast,…
    • Если вы хотите загрузить приложение не доступное в вашей стране, подключиться к сети компании находясь в дороге, или просто оставаться в безопасности используя Wi-Fi в общественном месте, вы будете нуждаться…
    • Обладая такими мощными устройствами, которые находятся в наших карманах, было бы не разумно игнорировать многозадачность во время работы на наших смартфонах. Одним из примеров, это одновременная работа над текстом файлом…