แก้ปัญหา iPhone 6 และ 6S ดับเมื่อปรับวันที่ 1 มกราคม 1970

ก่อนนี้เคยเสนอข่าว  (1 มกราคม 1970 วันมรณะ! ตั้งค่าวันที่ผิด เปลี่ยน iPhone ให้กลายเป็นที่ทับกระดาษทันที)ซึ่งหลายคนเกิดความสงสัยอยากรู้อยากร้อง จึงพาเครื่องกันไปลอง Apple Store หรือ iStudio กันมาแล้ว และไม่สามารถเข้าสู่ Mode DFD หรือสำหรับนักพัฒนาก็ยังแก้ไขไม่ได้ จนเกิดการกังวลขึ้น ล่าสุดมีเว็บนอกเผยวิธีแก้ไขแล้วอย่างเป็นทางการ

โดยการแก้ไขเบื้องต้นนั้น แค่ปล่อยให้แบตเตอรี่ iPhone ของคุณ หรืออุปกรณ์ iOS รุ่นใหม่ ที่ใช้ระบบปฏิบัติการ 64Bit ให้หมดเกลี้ยงจนเหลือ 0% (หรือให้เครื่องดับไปเลย) เพื่อเป็นการ Reset ค่าวันที่กลับมายังปัจจุบัน ถึงจะใช้งานได้ตามปกติ หรืออีกวิธีก็คือแกะเครื่องและปลดขั้วแบตเตอรี่ออก ซึ่งไม่แนะนำให้ทำเองที่บ้านนะครับ เพราะเครื่องอาจจะหมดประกัน หรือเกิดความเสียหายได้

   แล้วสาเหตุที่ทำให้เครื่องนั้นเปิดไม่ติดเมื่อตั้งวันที่ 1 มกราคม 1970 (1 มกราคม 2513) เพราะว่า ตามหลักของการเขียนโปรแกรมนั้นช่วงวันที่นั้นเรียกว่า Unix epoch หรืออีกชื่อคือ Unix Timestamp ซึ่งเป็นตัวเลขที่เริ่มนับในวินาทีแรกตั้งแต่วันที่ 1 มกราคม 1970 ซึ่งใช้การอ้างอิงจากตัวเลขแบบ 32 bit และจะไปสิ้นสุดที่ 19 มกราคม 2038
   แล้วมีผลอะไรกับ iPhone คำตอบคือ เนื่องจาก iPhone รุ่นใหม่ ๆ ตั้งแต่ 6 และ 6S ขึ้นไป ใช้ระบบปฏิบัติการแบบ 64 Bit แล้ว เมื่อตั้งวันที่ช่วงดังกล่าวจะไม่สามารถแสดงวันที่หรือค่าดังกล่าวได้ (พูดง่าย ๆ ผลเป็น 0) ดังนั้นเมื่อผลออกมาแบบนี้เครื่องก็เลยใช้งานไม่ได้นั่นเอง แต่ปัญหานี้อาจจะไม่เกิดขึ้นกับ iPhone หรือ iOS รุ่นเก่า ๆ นะครับสบายใจได้

iphonefix_1970_th
   สุดท้ายแล้ว การพยายามทำแบบนี้กับเครื่องตัวเองเพราะอยากลอง หรือเครื่องคนอื่นและ Demo นั้นมีอาจจะส่งผลให้เกิดความเดือดร้อนได้ ทางเลือกที่ดีที่สุดคือ อย่าไปปรับวันที่มั่วในเครื่อง เพราะอาจจะส่งผลให้เครื่องพังโดยไม่รู้ตัวได้ สุดท้ายแล้วการปล่อยแบตฯหมดเพื่อแก้ปัญหา แน่นอนว่ามันจบกับปัญหานี้ แต่คุณจะเสียบ Battery Cycle ไป โดยไม่รู้ตัวทำให้ iPhone อายุสั้นลงนะครับ
arstechnica

Leave a comment