蘋果在 macOS 10.12.4 系統更新中將 iPhone 上比較實用的 Night Shift 功能帶到了 Mac 設備上,但是這項功能只能夠相容 2012 年或者更新的 Mac 設備。近日,鋒友“
邪惡冷月
”分享了一個讓 2012 年之前的 Mac 設備也可以使用 Night Shift 功能的操作辦法,並且表示親測有效。一起來看看吧。
首先,我們先來看一下 Night Shift 支持的最低機型:
MacBookPro9,x
iMac13,x
Macmini6,x
MacBookAir5,x
MacPro6,x
MacBook8,x
這個機型序號可以在關於本機 - 系統報告 - 硬體概述 - 型號識別字中看到。
接下來我們來看看具體的操作步驟:
1. 打開終端,並輸入以下代碼:
nm /S*/L*/PrivateFrameworks/CoreBrightness.framework/CoreBrightness|grep _ModelMinVersion
查看偏移量,可以看到是 1e260(這個應該和系統版本有關係,如果是10.12.4的正式版應該都是這個值)
2. 重啟 Mac,開機時按住 CMD + R 進入恢復盤,使用恢復盤的終端,執行以下代碼關閉 SIP:
csrutil disable
3. 重啟 Mac 之後進入 /System/Library/PrivateFrameworks/,找到 CoreBrightness.framework 並複製。
4. 打開 Xcode 或者其他可以編輯二進位檔案的軟體,這裡以 Xcode 為例。使用Xcode打開CoreBrightness.framework資料夾中的 CoreBrightness 文件,並按下 Shift + Command + J,打開導航視圖,在其上按一下右鍵 Open As ->Hex,使用十六進位打開。
5. 按下 Command+F 打開搜索,搜索以下欄位:
09 00 00 00 0d 00 00 00 06 00 00 00 05 00 00 00 06 00 00 00 08 00 00 00
此時我們可以根據自己的機型做一個判斷,這裡的數值其實是 Night Shift 的最低機型限制,我們修改這個限制就可以讓 Night Shift 在老機型上運行。
欄位解釋:
MacBookPro9,x = “09”
iMac13,x = “0d”
Macmini6,x = “06”
MacBookAir5,x = “05”
MacPro6,x = second “06”
MacBook8,x =“08”
鋒友“邪惡冷月”的機器是 MacBookPro8,3,那麼將 09 修改為 08 以達到這個要求。
6. 在 Xcode 之中修改好之後,按 Command+S 保存。將整個資料夾覆蓋回去原位置,可能會要許可權,輸入密碼即可。
7. 在終端中執行以下代碼:
sudo codesign -f -s - /S*/L*/PrivateFrameworks/CoreBrightness.framework/Version/Current/CoreBrightness
8. 最好把 SIP 打開,用第二步中的方法回到開機磁片中,輸入以下代碼:
csrutil enable
9. 重啟電腦,前往系統偏好設置 - 顯示,即可打開 Night Shift 功能。