我通過測試,發(fā)現(xiàn)短信時(shí)間不準(zhǔn)的原因:
我用的是移動的手機(jī)號。 (手機(jī)設(shè)定的是:GMT+8,沒有打開自動更新時(shí)間,因?yàn),移動的手機(jī)開和不開是一樣的,我們這里的移動系統(tǒng)沒有提供這個(gè)功能)如果是系統(tǒng)給我發(fā)的短信,在短信詳情里不帶+86的特服號,收到的短信時(shí)間準(zhǔn)確,如果是其他手機(jī)發(fā)給我的短信,在短信詳情里看到的是+86XXXXXXXXXXX的手機(jī)號,時(shí)間就會快8個(gè)小時(shí)。
通過N次的測試(根據(jù)網(wǎng)友提供的經(jīng)驗(yàn),改什么時(shí)區(qū)呀,什么什么的,都試完了),我覺得,S40第三版的這個(gè)BUG是這樣的:如果來短信的號碼前帶國家區(qū)號(比如中國的是+86),手機(jī)的系統(tǒng)就會自動按國家區(qū)號自動調(diào)整短信的發(fā)出時(shí)間(其實(shí)我們看到的不是短信收到的時(shí)間,是短信發(fā)出的時(shí)間,這個(gè)時(shí)間是系統(tǒng)隨著短信一起發(fā)送過來的。 道理很簡單,你關(guān)機(jī)時(shí),別人給你發(fā)短信,當(dāng)你開機(jī)時(shí)會收到他發(fā)的短信,你看短信時(shí)間,就會知道他是什么時(shí)候發(fā)給你的了。)
為什么有的朋友時(shí)間是準(zhǔn)的,那是因?yàn)楫?dāng)?shù)氐囊苿踊蚵?lián)通在中轉(zhuǎn)短信時(shí)去掉了+86,還有就是收到的特服號(也就是不帶+86的號)發(fā)的短信時(shí)間是準(zhǔn)的。所以,給很多朋友的錯(cuò)覺是,別人的手機(jī)或者短信服務(wù)器有問題。其實(shí),多想一想就知道了:這和任何人的手機(jī)沒有關(guān)系,因?yàn),所以的短信都是通過移動或聯(lián)通的系統(tǒng)中轉(zhuǎn)的,服務(wù)器會按服務(wù)器的時(shí)間隨短信發(fā)出該短信的時(shí)間。這個(gè)時(shí)間一般都比較準(zhǔn)確,誤差不超過幾分鐘。。
由此,總結(jié):問題就是S40第三版的軟件BUG,只有通過軟件的修改來彌補(bǔ)!