今天早上的報導指出,台灣及其他亞洲地區陸續發生 iOS 11.1.2 的 iPhone 會有 App 閃退、黑屏、無限 respring 的現象發生;而發生狀況的時區都是亞洲,美國、歐洲則是到剛剛才產生這狀況。解決方式在報導中也有說明,只要先將時間調整回 12/2 之前,並重置設定即可。
狀況的發生原因
早上僅知道這狀況是由於 iOS 11.1.2 在時區上面的處理導致,所以將時間調整回 12/2 之前就可以解決。而到現在我們對於狀況有更多了解,這個 bug 似乎是由於 App 內的「local notification(本地通知)」所導致,對於部分 App 可以不須聯網,固定特定時間由本機端推播通知,就會產生這類 bug。像是提醒你固定時間睡覺的 App 等等。
If you have an app that has local notification with repeating settings, it will crash iOS Springboard on Dec. 2 (Tomorrow!) Here is a reproducible app by @takayamahttps://t.co/ecEoxFN2hM
— Yoshimasa Niwa (@niw) December 2, 2017
在 Reddit 及 Twitter 上,也有網友發現只要將通知關閉,並把 App 從多工關閉後,就可以避免這類型 bug 的發生。但 Apple 官方的客服人員目前僅推薦用手動調整時間至 12/1 以前的方式來解決,而根據網友的測試,只要將推送本地通知的 App 關閉通知後,無需重置或改時間,一樣可以排除狀況。
另外有些 App 則是從伺服器端遠端發送通知的(像是收到 LINE 訊息),這類型 App 就不是 bug 發生的原因。
蘋果目前已經知悉這個狀況,若無意外將會在很短的時間內推出更新或是從遠端處理(若有辦法的話),因為手動調整時間會導致部分 App 無法正常運作,因此建議各位先試著將 App 的通知關閉。
iOS 11.1.2 閃退解決辦法(關閉通知)
到「設定」>「通知」>找到會「推送本地通知」的 App > 關閉 App 通知:
關閉後,進入多工列將 App 從背景關閉即可。
iOS 11.1.2 閃退解決辦法(改時間)
第二種方式比較簡單,就如同前面所說的,依照以下步驟進行改時間的動作:
- 「設定」>「一般」>「日期與時間」,手動將時間調整至 12 月之前
- 時間調整完畢後,至「設定」>「一般」>「重置」>「重置所有設定」。重置設定後,iPhone 的資料仍會保留,但設定值會回復至原廠。
- 將時間恢復正常設定。
- 重新開機