為何iOS6勿擾模式會出現新年bug

        2013年新年伊始,蘋果iOS 6中搭載的“勿擾模式”就被曝光出現失效的bug,後來蘋果很快做出官方回應,稱該問題將在1月7日自動修復,建議用戶這幾天關閉該功能。那麼iPhone中為何會出現此問題呢,而為何7號又會自行修復呢?實際上這很可能是一種時間計算方式出現了問題,原因可能在於蘋果採用了ISO制式時間標準,卻沒有考慮到跨年對應的問題導致時間對應錯亂。

 

 

        國外TUAW網站首先刊出類似推測,但其中有嚴重ISO時間概念錯誤已經被指出;本文是在其基礎上進行的重新整理和推測

        ISO標準(製造業常使用該標準,也稱作商業歷)是這樣按照週數來顯示計算每年的日期的:YYYY-Www-D



        舉例說明:2012年第50週的星期二按照ISO標準以描述為:2012-W50-2

        公曆日期(Gregorian calendar)則是按照這樣的方式來顯示計算日期的:YYYY-MM-DD

        舉例說明:2012年12月11日公曆日期的描述:2012-12-11

        其實iOS日期的2012-W50-2  剛好對應公曆的2012-12-11

        而是ISO標準下,如何判定新年另有規定:自動判定新年包含第一個週四的那週為第一周,也就是說:

2012年12月30日:2012-W52-7

2012年12月31日:2013-W01-1

2013年1月1日:2013-W01-2

2013年1月2日:2013-W01-3

2013年1月3日:2013-W01-4(週四)

2013年1月4日:2013-W01-5

2013年1月5日:2013-W01-6

2013年1月6日:2013-W01-7

2013年1月7日:2013-W02-1

        這裡就是蘋果iOS 6“勿擾模式”出現bug最可能存在的問題,蘋果設定這個功能的時候,很可能使用了ISO時間制式採用周循環,但是卻沒考慮到跨年變動的問題,設定的時候,誤將2013年的第一個週循環設定為從1月7日開始,而2013新年前六天(可能)被判定為2012年的第53週(ISO制式的確在某些年份會出現第53週),但事實上根本就不存在這些時間,所以勿擾模式並沒有自動關閉。

        在現有iOS 6系統尚未進行任何軟件更新的情況下,大家可以進行這樣一個測試來鞏固上面的說法:把時間調整到2014年、2015年、2016年…&hellip ;只要新年的第一天是周五、週六、週日,就不會出現問題(前提是要提前一天設定勿擾模式,不可當天設定,當天設定會變成周日也不行) 。

        對於蘋果的做法來說,沒有在這幾天發布一個軟件更新補丁,而是讓用戶等待這端錯亂時​​間結束,可能是出於多方面考慮,但毫無疑問的是,此次的bug絕對是蘋果在製定“勿擾模式”功能的時候,在跨年日期計算上出了差錯,並非意外。

        而蘋果也會在未來的軟件更新中修復這一問題,所以大家根本不必擔心2014年的時候會出現該問題(要是誰不升級系統就當我沒說…)

 

              

責任編輯:admin

文章來自網絡,若有版權問題請聯繫站長刪除,更多iphone遊戲,請關注iphone台灣網

Leave a Reply

Your email address will not be published. Required fields are marked *