|
G-Shock Connected для Android и баги с синхронизацией времени
G-Shock Connected для Android и Баги с синхронизацией времени
Обещал создать тему по данному поводу. Итак обсуждать будем программу для Android, яблочных устройств у меня нет так что проверить не на чем. Владельцы Яблочных девайсов могут повторить все мои эксперименты и выкладывать результаты в теме. В качестве подопытных были использованы два Android устройства разных производителей и самое главное на чипсетах разных производителей Квалком и МТК. Итак начнём: Программа поддерживает на текущий момент следующие модели часов: GPW-2000 GR-B100 GBA-800 GBD-800 GST-B100 MTG-B1000 GPR-B1000 GMW-B5000 GW-B5600 Тесты я проводил на часах GW-B5600. Уверен на 99,999%, что с другими моделями будет то же самое. Исходные данные и факты: В GSM сетях есть функция синхронизации времени. Приписана в стандарте. В железках и софте все реализовано. Тем не менее есть операторы, которые упорно не желают вводить данную штатную функцию. Например Мегафон-Поволжье (+ Йота как виртуальный оператор в данных регионах). Телефоны с поддержкой синхронизации времени по сети выпускают с начала нулевых ещё задолго до появления первых смартфонов. Кварцевые резонаторы в современных смартфонах прямо скажем самые дешёвые. Производители считают, раз есть синхронизация времени по сети, то можно поставить в принципе любой кварц. И не важно за $100 или за $1000 смартфон. Помню неплохие кварцы ставил Siemens, но это было давно... Резервная батарея часов тоже спорное решение, хватает месяцев на 10 с момента производства а далее от этой батареи больше проблем чем пользы. По этой причине многие производители её вообще не ставят. В 2018 году многие даже бюджетные смартфоны имеют неотключаемую батарею и боковой лоток под сим. Но надо понимать, что на руках ещё полно телефонов с съёмной батареей в которых для смены сим надо снять батарею... Время при этом просто сброситься. Далее Android. Установить время может пользователь в настройках либо получить время из сети GSM. Программам устанавливать время запрещено. Можно взломать систему и разрешить программам изменять время (получить рут). Далее можно использовать программы синхронизации с сервером либо GPS. |
Работа программы:
Есть сервер Casio с точным временем обозначим это время X Есть системное время смартфона, обозначим его Y Есть время программы G-Shock Connected обозначим его Z Есть время в часах Casio обозначим его Q При запуске программа присваивает значение Z=Y, далее при наличии интернета связывается с сервером Casio и присваивает Z=X и далее периодически с ним сверяется. Проблема 1. Если вы только зарегистрировали часы в программе присваивается Z=Y и до перезагрузки смартфона программа попыток связаться с сервером не предпринимает. Проблема 2. Независимо от того откуда программа получила время она это время передаст в часы: - 4 раза в сутки, если включена синхронизация и блютус на телефоне - При подключении часов к программе - При запоминании точки Проблема 3. Синхронизация Z=X проходит ТОЛЬКО через мобильный интернет. Через Wi-Fi программа не связывается с сервером Casio. ------ |
Про мобильный интернет:
У всех операторов раз в год-два случаются глобальные сбои, а небольшие так несколько раз в год. Россия не Япония, которую не проблема полностью покрыть сотовой связью. Чуть за населенные пункты, трассы, ж/д ветки и все хорошо если голосовая связь есть интернет далеко не всегда... Такая вот бочка дегтя! Пользователь уверен, что часы идут точно горит индикатор что недавно была синхронизация, а на самом деле часы показывают не время а ерунду! Но есть небольшая ложка мёда! Такую кривую реализацию синхронизации можно использовать как фичу! Рутуем смартфон, ставим программу GPS синхронизации и вуаля у нас точное GPS время без интернета на часах без GPS синхронизации! |
Ну не знаю, не знаю. У меня пятилетний Note 4 со сменой батареей, после снятия которой и выключенными передачей данных время выставлять "в ручную" не нужно. По Wi-Fi часы GMW-B5000D к программе G-Shock Connected подключаются без проблем. Да, за неделю без синхры данные на часах с данными time.is отличаются в +1 сек.
|
Цитата:
- а вы попробуйте перевести время на несколько минут в телефоне и после этого перезагрузите смартфон (синхронизацию времени по gsm сети тоже необходимо отключить для эксперимента), а потом посмотрите как порога через wi-fi синхронизацию сделает с сервером...:D |
Эксперимент пока не проводил. Но возникает вопрос - а какая половая разница G-Shock Connected в том, как приходит интернет на смартфон - по wi-fi или через сим? Главное, чтобы он был и программа смогла законнектиться со своим сервером, или нет?
|
у меня после синхронизации на GW5600 все идет точно по time.is ну может буквально доля секунды расхождение.
Цитата:
Цитата:
на кой хрен отключать гсм и пытаться по вифи то синхриться? |
Цитата:
|
Посоны, у вас там чего, поезда с точностью до секунды ходят? При нормальных условиях, расхождения между гаджетами будет не больше 40 секунд. Программа от джишок, это вообще поделка на уровне 9 класса средней школы. От неё вреда, порой больше чем пользы. Сам с GPR-b1000 юзаю её, в основном, для навигации. На синхру забил, ибо +- пару секунд между смартом и часами, погоды не сделают.
|
Цитата:
------- ДОБАВЛЕНО ЧЕРЕЗ 22 МИН -------- Цитата:
Открывает наш путешественник телефон для установки СИМ и время сбрасывается к примеру на 0-00 1 января 2015г... А оператор GSM тоже как МегаФон-поволжье принципиальный попался не желает функцию синхронизации времени внедрять. А тут как раз время синхронизации подошло и часы тоже первое января показывают (да ещё и значек выводят мол время точное). И получается, что у нашего путешественника все часы ерунду показывают. Ладно думает он есть же программа и wi-fi, а программа не желает время обновлять фиг-вам жилище индейцев... В итоге наш путешественник на великом и могучем высказывает все что думает о программистах из Casio. Выключает блютус, запускает браузер идёт на сайт time.is ставит по нему руками часы, а уже по часам смартфон... |
Часовой пояс UTC +3, время: 14:35. |