Proč funkce Nerušit od společnosti Apple nebude správně fungovat až do 7. ledna

Jsem si jistý, že už si to uvědomujete, funkce Nerušit, kterou Apple debutoval s iOS 6, přestala fungovat tak, jak by měla, v úterý, když se svět obrátil do roku 2013. I když nemá problém se sám aktivovat, když mu to někdo řekne, nechápe, kdy by se měl vypnout, což znamená, že to uživatelé musí udělat ručně, jinak jim uniknou oznámení.

Společnost Apple slíbila, že se tato funkce automaticky opraví 7. ledna, ale proč vůbec přestala fungovat? A proč to v pondělí najednou začne fungovat tak, jak by mělo? Zdá se, že Apple má problémy s manipulací s datem a časem.

Po trochu testování Richard Gaywood z TUAW zjistil, že funkce Nerušit v iOS 6 nepřechází do nového roku až do prvního pondělí toho roku. Pokud by tedy například první den roku 2013 bylo pondělí, nebyl by to problém. Protože ale přistálo v úterý, musíme počkat do následujícího pondělí, než DND zjistí, kde přesně je.

Zdá se, že důvodem je jednoduchá chyba kódování od společnosti Apple. Stručně řečeno, místo zadání roku jako „rrrr“ je v kódu uvedeno jako „RRRR“. Rozdíl je prostě jedno je psáno malými písmeny, zatímco druhé ne, což se některým z vás může zdát nepodstatné - určitě ano ke mě; ale očividně tato variace dělá velký rozdíl, protože používá systém čísel týdnů ISO.

Systém číslování týdnů podle ISO používá formát YYYY pro rok namísto gregoriánského kalendáře, na který jsme všichni zvyklí, který používá rrrr. Systém ISO udělá to, že se podívá, ve kterém týdnu roku je, a poté použije číslici data s 1 počínaje pondělí. Například úterý 50. týdne 2012 by bylo 2012-W50-2 ve formátu týdne ISO.

Gaywood vysvětluje, proč je použití této metody problém:

Norma ISO definuje první týden v roce jako začátek „pondělí, které obsahuje první čtvrtek v lednu“. Podle této definice se prvních pár dní roku, které píšeme jako „2013“, ve skutečnosti počítá jako součást roku 2012; 2013 nezačíná dříve než v pondělí 7. ledna. Je to věc, kterou účetní rádi používají, aby udržovali věci čisté a uklizené. Zajímavé je, že 7. ledna je přesně čas Apple říká, že problém zmizí. Ah hah!

Jak naši přátelé na Ars Technica poukázali, matoucí věc o chybě DND je, že Vlastní dokumentace Apple varuje vývojáře jak se této běžné chybě vyhnout.

Mezi 1. lednem a 6. lednem si DND stále myslí, že je rok 2012. Část toho ano; kupodivu bit, který zpracovává aktivaci funkce, funguje tak, jak by měl, zatímco bit správy deaktivace ne. První pondělí v roce to ale bude trvat až do roku 2013 - proto bude DND fungovat tak, jak má od 7. ledna.

Zajímavé je, že to není poprvé, co má Apple problémy s daty v iOS. V letech 2010, 2011 a znovu v roce 2012 došlo k problémům s letním časem, zatímco nedávný problém s aplikací Kalendář způsobil její zhroucení, pokud si můžete 1. dubna 2013 naplánovat celodenní schůzku.

„Nebylo by nespravedlivé popisovat pověst společnosti Apple při zpracování dat a času jako„ poměrně špatnou “,“ uzavírá Gaywood.

Nečekejte tedy aktualizaci softwaru 7. ledna, která opraví DND - jen očekávejte, že bude fungovat, jak má.

Zdroj: TUAW

Poslední příspěvek na blogu

Apple přežil 80. léta díky jednomu softwaru, říká Guy Kawasaki
September 10, 2021

SAN FRANCISCO, REKLAMA: TECHNICKÁ KONFERENCE: Přežití Applu po 80. letech je díky jednomu softwaru, říká Guy Kawasaki, nejprodávanější autor a býva...

Apple Card získává svůj vlastní účet na Twitteru
September 10, 2021

Apple Card získává svůj vlastní účet na TwitteruOčekávejte novinky, ale ne podporu.Foto: Killian Bell/Cult of MacApple Card je nyní den po ní na Tw...

Jak biomedicínský expert inspiroval Apple k vytvoření ResearchKit
September 10, 2021

Nová open source platforma Apple, ResearchKit, by mohla změnit náš život více než Apple Watch a podle zprávy od Fúze s podrobným popisem vnitřního ...