蘋果發表會上一句話帶過的更新,背後的設計與技術可不簡單
蘋果發表會上一句話帶過的更新,背後的設計與技術可不簡單
2018.10.19 | 蘋果

前不久推出正式版的macOS 10.14(Mojave),應該可以稱為四年前的Yosemite以來,macOS在使用者介面上變化最大的一次更新。千呼萬喚始出來的原生「黑暗模式」讓人耳目一新,也引發了協力廠商應用的適配熱潮。

相比之下,另一項使用者介面的新功能——動態桌布(dynamic desktop)受到的關注則少得多。這是一項默認關閉的功能,啟用方法是打開「系統偏好設置-桌布與螢幕保護程式」,從「動態桌布」中選擇系統自帶的兩套背景之一。

macOS 動態桌布1.png
新增的兩套動態背景
圖/ 少數派

很顯然地,如此低調的功能很難引起用戶的注意,大多數的評測文章都選擇將其一筆帶過。蘋果自己的態度似乎也是一樣:在六月的WWDC Keynote演示中,Craig Federighi留給動態桌布的台詞只有一句話

Your desktop actually subtly changes throughout the day from morning, to afternoon, to evening.
你的桌布「背景」將隨著一天從早上、到下午、再到晚上的推移而微妙地改變。

乍聽起來,這確實並不稀奇,也沒有任何技術門檻。隨時間變化以切換背景,是很多桌布美化軟體的基礎功能,更別提十多年前的Windows Vista就已經原生支援影片背景了。

但問題實際上並不只是 「按時間切換圖片」 這麼簡單。因為,晨昏變化的節奏並非一成不變,而是隨著四季變換各有不同。除非生活在赤道或者極地,從夏到冬一定是晝漸短、夜漸長的。如果全年都按照一個節拍切換背景,其效果在絕大多數日子裡都將跟真實景象不同步。

隨著季節推移變化的不只是晝夜長度,還有太陽高度。顯然,夏天的太陽比冬天的同一時間要「高」。太陽高度還與緯度有關。假如你生活在北京,而系統在中午時分給你換上了一張「陽光從頭頂直射」的背景,你其實應該有一種違和感才對,因為北京根本不會有90度的日照。地處北緯40度的北京,太陽最高也只能達到73.5度,並且一年只有一次,時間是在夏至那天的正午。

macOS 動態桌布2.png
北京在春分日和夏至日的太陽高度變化
圖/ 少數派

可見,要真正讓桌布和窗外的光照 同步 變化,機械地踩著時間點換圖片是遠遠不夠的。理想情況下,同一組圖片的切換節奏應當呼應太陽運動、在四季各不相同,並且根據使用者的地理位置和日期,有選擇地「跳過」一些不符合實際情況的照片。

動態桌布的實現機制

macOS Mojave的動態桌布充分考慮了上述問題。在蘋果的實現方案中,背景的切換不是以時間為標準,而是以 太陽方位 為標準。具體而言:

  1. 每套背景包含16張靜態圖片(實驗證明似乎可以更少,但不能更多)。

  2. 每張靜態圖片都被標記了對應的太陽方位。定位的方式是所謂的「地平坐標系」,即用高度角(Altitude,定義為太陽和地平線的夾角)和方位角(Azimuth,定義為太陽按順時針方向偏離正北的角度)兩個值確定太陽在天球中的位置。

  3. 啟用後,系統將會根據使用者的位置和時間,計算太陽的即時方位,並與每張背景所記載的資訊進行比對,將其中與此時此地太陽位置最近似的那一張,作為桌布背景。

macOS 動態桌布3.png
地平面坐標系圖示(來自timeanddate)
圖/ 少數派

實際例子可能更有助於理解動態桌布的機制。我目前的所在地處於北緯40度,與北京基本相同。10月5日的早上6:30尚未日出,此時的太陽高度為-6.75度,方位為90.6度。啟用「沙丘」動態背景後,桌布顯示為該系列中的第三張。根據背景的元資訊(後文將說明方法),這張照片是在太陽高度-4.25度,方位86.34度的場景下拍攝的,與現實環境非常接近。如果將系統日期撥回三個月前的7月5日,會發現背景變成了系列中的第五張(太陽高度為7度)。的確,夏天的這一時刻,太陽應該已經升起了。

再將日期調回10月5日。這一天,太陽在下午12:48時達到最高位置。但如果試著慢慢將時鐘調過這一時刻,會發現背景並沒有切換為系列中最明亮的第八張,而是直接從第七張跳到了第九張。原因在於,秋天的太陽即使在正午也只能達到45度左右,而第八張背景是在太陽處於53度時拍攝的,因此不會被顯示。相反,在Mojave剛剛開始公測的七月時,這張背景會從上午10:40左右開始持續顯示約五個小時。

macOS 動態桌布4.png
動態桌布在不同日期的差異
圖/ 少數派

更有趣的是,在另一套動態背景Solar Gradients中,一張圖片對應的太陽高度為88.4度。如上所述,由於北緯40度的太陽,全年最高也只能達到73.5度,我將始終不會看到這張最亮的背景被用作桌布——它實際上成了熱帶地區使用者的「會員特權」。

Craig Federighi的那句 「subtly(微妙)」 畢竟並不是隨口說說而已。

背景資源、技術細節與自製方法

遺憾的是,即使Mojave的動態桌布在設計上如此講究,蘋果卻並沒有給予這個功能太多關注。系統自帶的動態背景只有兩張,並且沒有提供讓使用者自行製作的選項。

但這並不意味著自己動手的大門就被關閉了。自從Mojave測試版發佈以來,動態桌布引起了不少開發者的興趣和關注。在他們的努力下,這一功能的實現細節已經十分清晰了,自己製作起來也並不麻煩。

下面列出的是一些現有的動態背景資源,可以直接下載並設置為桌布。有興趣的讀者,可以繼續閱讀下文的技術細節與自製方法。

macOS 動態桌布5.gif
圖/ 少數派
macOS 動態桌布6.png
圖/ 少數派
macOS 動態桌布7.gif
圖/ 少數派

與以往的普通背景相同,新的動態背景也都儲存在「/Library/Desktop Pictures」路徑下,檔案名分別是「Mojave.heic」和「Solar Gradients.heic」。

「.heic」是什麼格式?喜歡用iPhone拍照的用戶,基本上對它不陌生。自iOS 11以下,大多數iPhone都已經默認改用HEIF(High Efficiency Image File Format,高效率影像檔格式)儲存照片。這裡的「.heic」,就是HEIF格式的可選副檔名之一。與傳統的JPEG相比,這種新格式在縮減空間佔用和減少畫質損耗上,有著更好的表現。

不僅如此,HEIF還是一種「容器」(container)格式——它不僅能儲存單張靜態照片,而且能儲存 一組 連續照片、以至影片;這就為將動態背景打包在一個檔裡提供了可能。實際上,這兩個檔可以直接用系統內建的預覽app打開,並從側邊欄中看出兩套背景的構成——都包括16張構圖相同而光線各異的靜態圖片。

但這並沒有回答我們最關心的問題:背景的自動切換是靠什麼控制的?試著用16進制編輯器打開一張動態背景,從頭略微往下翻閱,就能在第一張圖片的EXIF資訊中看到玄機:一個自訂的「apple_desktop」命名空間和其項下的「solar」屬性。

macOS 動態桌布8.png
隱藏在 EXIF 資訊中的參數
圖/ 少數派

下面的「破解」過程需要一點淺顯的macOS經驗。「solar」屬性值末尾的等號是base64編碼的明顯特徵。用「base64 -D」命令解碼,發現輸出以「bplist」開頭,這是二進位屬性工作表檔的魔數。為此,再用「plutil」命令將其轉換為可讀的XML格式。

macOS 動態桌布9.png
將動態背景的配置資訊轉為可讀模式
圖/ 少數派

這樣,蘋果在Mojave的動態背景中設置的機關就展現出全貌了。可以看到,在 「si」根鍵下,每張靜態圖片被都標記了「i」、「a」、「z」三個鍵值,分別對應照片的序號、拍攝時的太陽高度角和方位角。

此外,沙丘背景還有一個「ap」根鍵,其下的「l」和「d」兩個值,分別指定了在設置中啟用亮暗兩種「靜態」選項時,要顯示的圖片序號。(太陽漸變背景沒有「ap」根鍵,因此在設置中沒有「靜態」選項。)

至此,原理上的鋪墊就全部完成了,最後要解決的就是如何據此自行製作動態背景。顯然,這涉及到格式轉換、資訊編碼等操作,全部手工完成會非常繁瑣。好在,已經有開發者製作出了命令列工具,可以使用Homebrew安裝:

$ brew tap mczachurski/wallpapper && brew install wallpapper

這裡簡單介紹一下該工具的使用方法。首先,將想要製作成動態背景的圖片檔按序號依次命名。然後在 同一目錄 下創建一個JSON檔(如「config.json」),在其中逐行指定照片的參數:

[
{"fileName":"1.png","isPrimary":false,"isForLight":false,"isForDark":false,"altitude":-0.34275283875350282,"azimuth":270.9334057827345},

{"fileName":"16.png","isPrimary":false,"isForLight":false,"isForDark":false,"altitude":-38.04743388682423,"azimuth":53.509085812513092}
]

其中,「fileName」為檔案名,「isPrimary」表示是否將圖片用作記錄整套背景元資訊的「首要圖片」,「isForLight」和「isForDark」分別指是否用作開啟亮/暗兩種「靜態」選項時使用的圖片,「altitude」和「azimuth」則是照片對應的高度角和方位角。

準備完畢後,在終端執行「wallpapper -i config.json」即可獲得打包好的HEIC格式動態背景。

如果你想要查詢照片拍攝時的太陽位置,或者瞭解所在地的太陽軌跡,可以使用SunCalc等線上工具,iOS上的Sky Guide等天文類 app 也可以提供幫助。想要省事的讀者,也可以使用我製作的範本設定檔,其內容原樣複製了系統自帶的沙丘背景中圖片的參數,只需找16張光線情況與該套背景類似的圖片,依次命名為「1.png」到「16.png」,並用上述工具製作即可。

macOS 動態桌布10.jpeg
用Sky Guide應用查詢太陽方位
圖/ 少數派

結語

動態桌布是一個很有蘋果風格的設計。就像OS X視窗最小化時的「果凍」特效、iOS 6中隨螢幕傾斜變換光澤的音量滑塊一樣,你可以完全不意識到它的存在,也可以追根究柢,然後驚異於其考慮之深。

當然,對於這類設計,歷來不乏「不務正業」的批評。特別是在macOS軟體品質整體不如以往的大前提下,將本就有限的開發資源,分散給這樣一些對性能和穩定沒有實質説明的功能,似乎顯得有些奢侈。

儘管如此,我仍然歡迎這樣的設計。畢竟,軟體設計並不只是關乎功能。設計中的人文色彩及其對用戶感受的間接影響,也是細微但重要的部分,說它是一種特殊的「功能」也不為過。每天傍晚,當我看到背景隨著窗外的日落準時切換成另一種色澤時,很難不產生一點「虛擬與現實無縫銜接」的愉悅。

幾個月前,英文蘋果社區中曾經有過一次小規模討論:一些核心用戶遺憾地表示,已經很久沒有看到像早期iMac那樣頗有些異想天開(whimsical)的設計了。糖果配色螢幕轉軸這些「無用」但有趣的設計,在近年來讓位於實用主義的、參數導向的考量。這結論或許對硬體產品線是成立的;但蘋果用動態桌布、Animoji,和Siri的玩笑告訴我們,它的whimsy畢竟還在軟體的很多角落裡閃現。

本文授權轉載自:少數派

關鍵字: #Apple #Mac
往下滑看下一篇文章
代理式商務來襲:萬事達卡與NCCC攜手產業打造信任新基礎
代理式商務來襲:萬事達卡與NCCC攜手產業打造信任新基礎

隨著代理式 AI(AI Agent)的快速普及,其在商務交易中的應用也從智慧搜尋、商品比價一路延伸至自主下單,逐步形塑出全新的代理式商務(Agentic Commerce)模式。為因應此一趨勢,萬事達卡攜手聯合信用卡處理中心(NCCC)於 15 日舉辦「 AI 時代支付安全與數據信任高峰會」,匯聚產官學界專家共同交流,深入探討代理式商務下的支付授權與驗證機制,以及 AI 時代金融監理的演進與詐欺防治重點。

萬事達卡台灣區董事總經理陳懿文表示,無論交易是由人或代理式 AI 發起,都應該在安全可信的環境中完成,萬事達卡將持續強化支付安全的把關能力,不僅著眼於風險控管,更期望將「信任」轉化為未來創新的基礎與成長動能。聯合信用卡處理中心董事長桂先農則認為,面對 AI 浪潮,支付安全已不再只是技術問題,更要在消費體驗、數據運用與隱私保護之間取得動態平衡。金融監督管理委員會主任委員彭金隆表示,金管會未來將持續秉持安全與發展並進的原則,致力於打造可信賴、穩健且具有包容性的環境,加速金融 AI 應用的發展。

Mastercard-02.jpg
金融監督管理委員會主任委員彭金隆特別出席,表示金管會核心理念為「負責任創新」,並於2025 年成立『金融科技產業聯盟』,期待結合金融周邊單位與金融機構的力量,打造可信任及穩健的AI 金融應用環境。
圖/ 數位時代
Mastercard-03.jpg
萬事達卡台灣區董事總經理陳懿文(左)攜手聯合信用卡處理中心董事長桂先農(右)致詞不約而同提到:面對 AI 浪潮,支付安全將會是如何在消費體驗、數據運用與隱私保護之間取得動態平衡的治理課題。
圖/ 數位時代

AI Agent 重新定義消費旅程,萬事達卡提 4 大要素保障支付安全

Google Cloud 台灣技術總經理林書平認為,代理式商務正在重新定義消費旅程,而 Universal Commerce Protocol(UCP)則是支撐這場變革的關鍵。他表示,UCP 就好像電商界的 Type-C 接口,可以串聯不同代理式 AI 與電商平台後台系統,讓代理式 AI 可以根據消費者需求,自主完成商品搜尋與推薦、比價到下單的交易流程,打造更即時、更個人化的消費體驗。

在此情況下,支付不再只是交易流程中的最後一步,而是串聯個人化服務、授權機制、風險控管與信任的核心環節。萬事達卡數據與顧問服務部資深副總裁戴輝瑾指出,要確保代理式商務下的交易安全,必須具備 4 個關鍵要素,包括可驗證代理式 AI 身份、明確的使用者授權、確保代理式 AI 執行的任務沒有超出授權範圍,以及在發生爭議時,能透過公開透明且可追溯的機制進行處理,確保各方權益。

此外,他也強調,風險管理不應侷限於付款當下,需從交易前、交易中、交易後到持續性的監控,建立端到端的治理架構。為此,萬事達卡推出多元解決方案強化整體防護能力,包括以 Identity Solution 強化數位身分驗證、以 Decision Intelligence Pro 提升即時風險判斷能力、透過 Ethoca 優化爭議處理流程,以及藉由 Recorded Future 提供即時網路威脅情報,全面覆蓋交易生命週期,打造更完整的支付安全生態系。

AI 監理邁入新階段,以信任為核心的監管新框架

從監理角度來看,AI 所帶來的變革也同步改寫治理思維。金管會銀行局局長童政彰指出,監理機關不僅要加強國際合作,更應深化與金融業及科技業的對話,建立更開放且具前瞻性的監理模式。進一步針對代理式商務來看,政大金融AI創新中心主任王儷玲認為,金融監理重心應由模型與資料管理,轉向代理式 AI 安全,尤其當 AI 可以代理消費者進行支付時,如何確保代理式 AI 在授權範圍內執行交易,將成為未來的監理重點。

在國際監理趨勢方面,萬事達卡數據與顧問服務部副總裁 Audrey Wong 分析亞太與全球支付生態並指出,AI 時代的監管核心已轉向「以信任為基礎」,金融業在應用 AI 時,必須具備可解釋性、可問責性與可稽核性,確保決策透明且可追溯。同時,隨著詐騙與洗錢行為跨境化,監理機制也應向外延伸,確保跨境一致性,並透過如 ISO 20022 等標準強化資料透明與治理能力。

回到金融機構實務面,國泰世華銀行數據長梁明喬表示,代理式 AI 將對既有支付與風控機制帶來結構性改變,以信用卡支付為例,過往的驗證重點在於是否為本人,但在代理式 AI 情境下,則轉變為驗證 AI 的身份、授權來源與行為意圖。未來,隨著代理式 AI 的普及發展,授權與權限管理將變得更加重要。

Mastercard-04.jpg
關鍵對談以「AI 時代的資安監管趨勢與企業應對策略 」為題,左起邀請:數位時代總編輯 王志仁主持及重磅與談人國立政治大學金融 AI 創新中心主任 王儷玲、國泰世華銀行數據長 梁明喬及萬事達卡數據與顧問服務部副總裁 Audrey Wong與會。
圖/ 數位時代

AI 詐騙升級,聯防機制成新關鍵

最後,本場研討會亦聚焦討論 AI 造成詐欺風險升級的議題。台灣大哥大資訊長蔡祈岩觀察,詐騙已從單一管道演變為跨平台、跨場景的複合型攻擊,尤其是假冒「代理式 AI 」的詐騙手法,透過對話引導消費者提供個資與支付資訊,正成為新興且高風險的威脅來源。

萬事達卡 Franchise Innovation 副總裁Dennis Koh 進一步歸納出 3 大詐欺發展趨勢。第一,Deepfake 服務化使詐騙門檻與成本大幅降低。第二,詐欺行為跨境化與遠端化,已經突破地理限制、走向全球攻擊。第三,社交工程從大量投放釣魚信件,轉為高度個人化、難以辨識的精準攻擊。

面對詐欺手法持續演進,聯合信用卡處理中心風險管理部資深協理李錦堯表示,聯卡中心正透過區塊鏈與FIDO生物識別技術,打造無密碼的數位身分認證系統,並結合AI數據模型提升TRACE風險預警系統的效能。未來,聯卡中心將持續優化模型,並建立跨機構資料共享的聯防機制,整合發卡機構與國際組織資源,以提升整體防詐能力,對抗日益複雜的詐欺攻擊。

代理式商務將為消費者帶來更好的消費與支付體驗,但同時也對安全、治理與信任造成更大的影響,促使產業必須從單點防護走向跨機構、跨生態系的整體治理思維。在此趨勢下,萬事達卡將持續扮演關鍵推動者角色,攜手監理機關與產業夥伴,強化支付安全標準,推動台灣支付產業的監管框架與創新發展,打造兼顧效率與信任的數位商務環境。

Mastercard-05.jpg
回應AI 代理經濟下的詐欺防制與個資挑戰,本論壇特別邀請台灣大哥大資訊長 蔡祈岩、聯合信用卡處理中心風險管理部資深協理 李錦堯、萬事達卡Franchise Innovation副總裁 Dennis Koh交流趨勢觀點。
圖/ 數位時代

登入數位時代會員

開啟專屬自己的主題內容,

每日推播重點文章

閱讀會員專屬文章

請先登入數位時代會員

看更多獨享內容

請先登入數位時代會員

開啟收藏文章功能,

請先登入數位時代會員

開啟訂閱文章分類功能,

請先登入數位時代會員

我還不是會員, 註冊去!
追蹤我們
AI全球100+台灣20
© 2026 Business Next Media Corp. All Rights Reserved. 本網站內容未經允許,不得轉載。
106 台北市大安區光復南路102號9樓