Комментарии 65
А проблема на самом деле не только в iCloud, а в механизме обработки часовых поясов. Заметил такую штуку на прошлой неделе в JavaScript, разбирая такое же поведение одной библиотеки (дата на год в прошлом). А дело вот в чём:
выдаёт в Chrome: Tue Dec 31 2013 23:00:00 GMT+0300 (RTZ 2 (зима)), а в Firefox: Wed Jan 01 2014 01:00:00 GMT+0400 и только в IE 9 — Wed Jan 1 00:00:00 UTC+0300 2014
Причем у меня это всплыло в куске, который парсит дату в ISO8601, возможно у Apple алгоритм похож.
Спасибо нашему правительству за очередную головную боль. Кто знает, где это ещё всплывет.
alert(new Date(2014,0,1));
выдаёт в Chrome: Tue Dec 31 2013 23:00:00 GMT+0300 (RTZ 2 (зима)), а в Firefox: Wed Jan 01 2014 01:00:00 GMT+0400 и только в IE 9 — Wed Jan 1 00:00:00 UTC+0300 2014
Причем у меня это всплыло в куске, который парсит дату в ISO8601, возможно у Apple алгоритм похож.
Спасибо нашему правительству за очередную головную боль. Кто знает, где это ещё всплывет.
Разница в год, и разница в час — это две большие разницы. А так да, правительство во всем виновато, кто ж еще.
Там алгоритм был такого плана: парсится текстовая строка с датой. Сначала берётся год — 2014, создаётся объект дата 01.01.2014 00:00:00 (new date(2014,0,1)), чтобы потом распарсить месяц, число, время и добавить в дату, а Хром вместо этого создаёт дату: 31.12.2013 23:00:00. Оп, и мы уже год назад.
Я понимаю о чем вы, но и вы поймите: date(01.01.2014 00:00:00) — date(31.12.2013 23:00:00) = interval(1 hour). Никак не год. В статье же автор говорит, что создал заметку сегодня (не 1 января в 00:00), а на выходе получил дату 5 октября 2013, то есть ровно год назад. Мне кажется, чтобы ТАК ошибиться с часовым поясом, эппл нужно было нанять очень «правильного» индуса с очень «правильным» ПХП-скиллом.
Давайте рассмотрим пример с 5 октября 2014. Имеем строку «2014-10-5 12:00».
1. Парсим год: 2014
2. Создаём объект дата 01.01.2014 — получаем дату: 31.12.2013 23:00:00
3. Парсим месяц — 10 — меняем месяц в нашей дате: 31.10.2013 23:00:00
4. Парсим число — 5 — меняем число в нашей дате 5.10.2013 23:00:00
5. Парсим время — 12:00, в нашей дате 5.10.2013 12:00:00
Вот мы и год назад. Не пытаюсь оправдять Apple. Просто вариант причины такого поведения
1. Парсим год: 2014
2. Создаём объект дата 01.01.2014 — получаем дату: 31.12.2013 23:00:00
3. Парсим месяц — 10 — меняем месяц в нашей дате: 31.10.2013 23:00:00
4. Парсим число — 5 — меняем число в нашей дате 5.10.2013 23:00:00
5. Парсим время — 12:00, в нашей дате 5.10.2013 12:00:00
Вот мы и год назад. Не пытаюсь оправдять Apple. Просто вариант причины такого поведения
Эмм… Прям немного особой уличной математики от Девида Блейна :) Боюсь спросить, а вы всегда так с датами жестоки? Все это очень клево и захватывающе, но… зачем? Не проще ли сразу отпарсить и создать готовую дату, чем создавать 01.01.2014 и потом к ней прибавлять число и меяц? Хотя, индус с ПХП и оплатой за количество символов в коде апплодировал бы стоя за вашу находку, это факт.
Это баг в Chrome (https://code.google.com/p/chromium/issues/detail?id=417640), наложившийся на кривой апдейт винды (http://support2.microsoft.com/kb/2998527/en-us) с исправленными для РФ часовыми поясами (ведь 26.10 произойдет переход на новые таймзоны)
Firefox ведет себя правильно.
Firefox ведет себя правильно.
Странно вообще-то, что дата создания записи берется с клиента, а не сервера.
Я вот про это: alert(new Date(2014,0,1));
Такое встретили на работе. Откатите обновление support.microsoft.com/kb/2998527/en-us, и всё решится.
С датой в iCloud, видимо, решится, но исчезнувшие заметки, к сожалению, не вернутся.
для защиты от минусов: support.microsoft.com/kb/2998527/en-us привносит баг: new Date(2014,0,1) — Tue Dec 31 2013 23:00:00 GMT+0300 (RTZ 2 (зима))
31 декабря 2013 никак не было зоны +3
31 декабря 2013 никак не было зоны +3
Про это обновление я сразу подумал, пришлось найти вариант обхода проблемы для тех у кого обновление стоит, и тех у кого нет
Вариант обхода: new Date(Date.UTC(2014,0,1))
А хороший вариант. Спасибо!
Это НЕ вариант обхода.
Создается дата 04:00:00 по Москве. Если попытаться сместить ее в 00:00:00 будет тот де глюк — прыгнем на час назад в 2013 год.
Создается дата 04:00:00 по Москве. Если попытаться сместить ее в 00:00:00 будет тот де глюк — прыгнем на час назад в 2013 год.
С тем же успехом можно чинить через new Date(2014, 0, 1, 1, 0, 0, 0)
хорошо, часы и минуты можно обнулить потом
В том и дело, что нельзя.
С точки зрения Windows НЕ СУЩЕСТВУЕТ времени между 2014-01-01 00:00:00.0 и 2014-01-01 01:00:00.0 не включая правый конец интервала.
С точки зрения Windows НЕ СУЩЕСТВУЕТ времени между 2014-01-01 00:00:00.0 и 2014-01-01 01:00:00.0 не включая правый конец интервала.
После обновления не существует???
что выдаёт следующий код?
что выдаёт следующий код?
var d = new Date(Date.UTC(2014,0,1))
d.setHours(0);
console.log(d);
Заметки — ещё ничего. У меня пропали документы в Pages.
Пишите напрямую в Apple, там обычно помогают
Присоединяюсь. Но у меня не дата сбилась, а просто часть (!) заметок исчезла. Синхронизация была между mac-ом и iphone.
После этого храню все в 1Password в виде заметок.
После этого храню все в 1Password в виде заметок.
Может дело в другом? Ранее заметки синхронизировались не с iCloud, а с Гуглом, а потом вы поменяли на iCloud и «гугловские» уплыли…?
Я во времена iOS 6 таким путем чуть сам заметок не лишился, еле восстановил. Но это было из-за непонимания принципов работы синхронизации всего добра в облако…
Я во времена iOS 6 таким путем чуть сам заметок не лишился, еле восстановил. Но это было из-за непонимания принципов работы синхронизации всего добра в облако…
НЛО прилетело и опубликовало эту надпись здесь
удалено. промахнулся.
Пожалуй, самый надёжный носитель информации — флешка/жёсткий диск, лежащий на полочке, дублированный другой флешкой / другим жёстким диском с той же информацией, лежащим на другой полочке, подальше от первой.
где-то на хабре это уже обсуждалось. пожар — и капут обеим флешкам. лучше их географически разносить прям вот совсем подальше друг от друга. я уже давно подумываю регулярно закачивать свои бэкапы на жеский диск/флэшку и возить в ячейку банка. но лень побеждает благие намерения :)
Можно просто использовать одновременно 2-3 облачных провайдера для хранения важных бэкапов. Например, AWS S3 + Dropbox + GDrive.
плюс флешка в банке, плюс флешка дома, и плюс все это закриптовано, чтоб паранойя спала спокойно. видимо, я к этому все же приду в конце концов, когда «победю» свою лень. проблема с флешкой в банке еще в том, что если данные регулярно обновляются и бэкапить надо хотя бы раз в неделю — то нужно быть законченным педантом, чтоб заствалять себя еженедельно наведываться в банк с новой порцией бэкапов. тут уж, безусловно, криптование + несколько облачных провайдеров однозначно побеждают.
> еженедельно наведываться в банк с новой порцией бэкапов
Это одна из причин, по которым я и не дошел до стадии «арендовать ячейку в банке».
А так — лежит себе контейнер на трех разных провайдерах + еще и на своем сервачке, быстро и удобно.
Руки все не дойдут совсем все это дело автоматизировать, чтобы положил в каталог локально — а оно сразу засунулось в контейнер, удалилось локально и залилось везде.
А, ну еще есть локальная флешка, на случай если вдруг не будет интернетов, а инфа из контейнера срочно понадобится.
Это одна из причин, по которым я и не дошел до стадии «арендовать ячейку в банке».
А так — лежит себе контейнер на трех разных провайдерах + еще и на своем сервачке, быстро и удобно.
Руки все не дойдут совсем все это дело автоматизировать, чтобы положил в каталог локально — а оно сразу засунулось в контейнер, удалилось локально и залилось везде.
А, ну еще есть локальная флешка, на случай если вдруг не будет интернетов, а инфа из контейнера срочно понадобится.
Dropbox исспользовал раньше AWS S3 раньше для хранения данных и был одним из самых больших их клиентов, не думаю что сейчас что-то изменилось.
НЛО прилетело и опубликовало эту надпись здесь
можете пояснить, причем тут Chrome? (я так понимаю, речь про Google Chrome на Windows)
В Chrome на Windows в веб-версии iCloud показываются неверные даты создания заметок. В firefox при этом показывается нормально.
но как это связано с пропаданием заметок с айфона?
пропадают ли заметки, если не пользоваться web-версией iCloud в Chrome?
пропадают ли заметки, если не пользоваться web-версией iCloud в Chrome?
НЛО прилетело и опубликовало эту надпись здесь
Храню заметки в Google, при настройке учетных записей почты можно выбрать, что бы там и заметки сохранялись, а для приложения «Заметки» хранилищем по-умолчанию выбрана учетная запись Google. Из дополнительных плюсов — заметки можно посмотреть в веб интерфейсе Gmail или просто в десктопном почтовом клиенте.
А у меня iPad на iOS 8 стал несколько раз в день выдавать сообщение «SIM-карта не вставлена», хотя ее в нем никогда не было. Раньше сообщение появлялось, но только при включении устройства. Сейчас же каждые несколько часов выскакивает. Раздражает жутко.
Никто не знает чем это лечится?
Никто не знает чем это лечится?
У меня на iPad mini Retina такая же проблема. Пока думаю что дело в обильно насыщенной багами iOS 8. У вас есть аккаунт разработчика? Не тестировали 8.1 beta 1? Вдруг в этой версии проблема решена.
Вас в Гугле всех забанили? У меня и iPad'а-то нет, но первый же запрос подсказал ответ: включить Airplane mode, затем активировать обратно WiFi. И не гадить в статьях на другую тему.
Возможно, у вас совсем другой случай. Но для того, чтобы начинать ругаться на заметки, нужно понять, как они работают при синхронизации.
Заметки можно синхронизировать практически с любым почтовым ящиком( gmail, icloud etc). Технически заметка при синхронизации — это письмо.
Теперь можно рассмотреть варианты потери заметок:
1. можно грохнуть почту за период и заметки тоже пропадут.
2. можно подключить новую почтовую учетку к айфону, поставить галку о том, что на нее синхронизируются заметки. Не заметить, что они стали синхронизироваться не в icloud, а в новый ящик, а затем отключить в айфоне эту почту. Опять же останутся заметки только за старый период.
И еще куча возможных вариантов, но все они крутятся вокруг добавления учетных записей почтовых ящиков и синхронизации заметок с ними.
Заметки можно синхронизировать практически с любым почтовым ящиком( gmail, icloud etc). Технически заметка при синхронизации — это письмо.
Теперь можно рассмотреть варианты потери заметок:
1. можно грохнуть почту за период и заметки тоже пропадут.
2. можно подключить новую почтовую учетку к айфону, поставить галку о том, что на нее синхронизируются заметки. Не заметить, что они стали синхронизироваться не в icloud, а в новый ящик, а затем отключить в айфоне эту почту. Опять же останутся заметки только за старый период.
И еще куча возможных вариантов, но все они крутятся вокруг добавления учетных записей почтовых ящиков и синхронизации заметок с ними.
С тем, как работает синхронизация заметок, я знаком. На другом телефоне (и другом аккаунте iCloud) висит несколько аккаунтов на заметках. И уже разбирался с тем, как оно там при этом работает.
Но на этом устройстве:
1. Заметки использовались исключительно в приложении Заметки на одном устройстве.
2. Как почта не юзались, соответственно, и не удалялись пачками за период.
3. С другими аккаунтами заметки не синхронизировались.
Хотя, конечно, помутнения памяти никто не отменял. Но все равно после обновления синхронизация осталась бы, либо остались бы заметки.
Но на этом устройстве:
1. Заметки использовались исключительно в приложении Заметки на одном устройстве.
2. Как почта не юзались, соответственно, и не удалялись пачками за период.
3. С другими аккаунтами заметки не синхронизировались.
Хотя, конечно, помутнения памяти никто не отменял. Но все равно после обновления синхронизация осталась бы, либо остались бы заметки.
Сегодня в Pages произошли очень странные баги: было 4 документа и включена опция «Войти в iCloud» (постоянная синхронизация документов при наличии интернета), при написании одного из документов появилось сообщение что-то вроде «этот документ был удалён» и он действительно удалился и потом снова неожиданным образом появился. Когда закончил писать 5 документ, ни осталось ни одного, но решил проверить icloud.com и все они оказались там загруженными, но на устройстве ничего до сих пор нет.
Подумал на iOS 8 и на не очень хорошую версию Pages (при длительной работе нашлись разные мелкие баги в приложении), но прочитав статью теперь тоже думаю что, возможно, дело в синхронизации.
Подумал на iOS 8 и на не очень хорошую версию Pages (при длительной работе нашлись разные мелкие баги в приложении), но прочитав статью теперь тоже думаю что, возможно, дело в синхронизации.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Эй, iCloud, где мои заметки?