發表日期 2020-03-13T21:06:16+08:00
大傢都說蘋果新品預測得看郭明錤。確實,這個人稱「地錶最強蘋果分析師」的男人,透過供應鏈內綫,有近水樓台先得月的優勢,經常劇透不少蘋果新品。
但比那個男人還強的,還有一群網友稱為 A.pple Spelunker 的開發者。
Spelunker 是任天堂經典遊戲,主角為瞭取得洞窟最下層的祕寶而深入地下迷宮探險。這群開發者之所以獲得這稱號,原因就是和 Spelunker 很像。
▲ 任天堂經典遊戲《Spelunker》。
A.pple Spelunker 平時開發各種應用軟體,為 iOS、macOS 生態添磚加瓦。而正常工作背後,是專注於反嚮工程蘋果各種新係統,嘗試取得蘋果新品的蛛絲馬跡。
近日,他們透過分析洩漏的 iOS 14 程式碼,證實大傢關注已久的 iPhone 9 及頭戴式 AirPods。
▲ iOS 14 找到的頭戴式 AirPods 圖。(Source:9to5Mac)
這些郭老師不是有預測到嗎,憑什麼說比郭老師強?
關鍵是,他們的預測,準確率幾乎 100%。
光說無用,不如直接迴到 2017 年 iPhone X 發錶前,看看 A.pple Spelunker 怎麼在各式各樣傳聞中,逐步展示 iPhone X 最真實的樣子。
iPhone X 發錶前大半年裏,網路有很多渲染圖、模型機流齣。當時傳言的正麵設計就有 3 種。
一是一整塊完整螢幕,也就是現在的全螢幕。二是螢幕中間挖個小槽,放置喇叭及鏡頭。三就是瀏海設計瞭。
▲ 傳聞的挖孔螢幕 iPhone X。
但 iPhone X 的真實麵貌,早在當年 7 月,蘋果就藏在大傢都想不到的地方:HomePod 的測試版韌體裏。
韌體發錶一週後,開發者 Steve Troughton-Smith 從韌體挖齣內部代號為 D22 的新 iPhone,並找到配套的圓角瀏海螢幕外觀嚮量圖。
雖說瀏海螢幕首次曝光並非透過深挖係統程式碼,之前已有不少模型機、渲染圖甚至所謂工廠外洩零件都顯示瞭瀏海螢幕。但一定程度來說,嚮量圖齣現,基本就確定瞭 iPhone X 正麵設計。
愛開玩笑的 Steve Troughton-Smith 找到嚮量圖後,甚至擔心蘋果員工會不會有個不好過的週一。
另外,9to5Mac 在消息曝光前後兩個月的報導,不乏 iPhone X 將採用挖槽設計的資訊,關於 iPhone X 的配圖不時也齣現一些五花八門的設計。
嚮量圖曝光後,網站關於外觀的討論基本都繞著瀏海螢幕瞭,反倒頂部狀態欄應該怎麼改變成為新話題。9to5 Mac 還舉行投票活動。
(Source:9to5Mac)
然而,這話題很快隨著 Steve Troughton-Smith 後來的發現終結。
既然變成全螢幕,為 iPhone 服務 10 年的 Home 鍵也「最佳化」瞭,那麼互動操作也會不同吧。
對互動這件事,當時有幾個說法:
這些互動預測和硬體不一樣,無法透過供應鏈甚至工廠零件外洩取得,所以全螢幕互動預測一直眾說紛紜,誰也沒有令人信服的證據。
▲ 郭明錤報告預測過的 Function Area。
一直到 iOS 11 GM 推齣,謎題終於解開瞭。
Guillherme Rambo 在 iOS 11 GM 發現介麵底部的小長條,雖然當時大傢都不知道小長條叫什麼,但透過程式碼得知,小長條就是虛擬 Home 鍵的角色,但又結閤手勢,功能比 Home 鍵多一點,透過不同方嚮滑動,可迴到桌麵,切換應用程式等。
還有 Home 鍵撤除後影響很大的問題,就是怎麼解鎖手機。
這個問題的討論與互動相比沒那麼復雜,就兩種聲音,一是螢幕下指紋,二是臉部辨識。結閤當時螢幕下指紋技術的成熟度、分析師預測及瀏海功能判斷,大部分人都更傾嚮臉部辨識。
但有意思的是,最初從軟體角度找到臉部辨識綫索的,同樣不是在 iOS 找到,依然是在 HomePod 韌體。
當時一位匿名開發者在 HomePod 新韌體 BiometricKit 程式碼發現端倪。這部分程式碼負責連結 iPhone 的生物辨識,之前都是一些指紋辨識程式碼,但新版卻包含許多名字有「FaceDectect」(臉部偵測)的新程式碼。
之後包括 Steve Troughton-Smith 等多位工程師,分彆在 iOS 及 HomePod 韌體找到更多程式碼證據,證實瞭 iPhone X 臉部辨識需要多角度登錄、使用紅外綫元件及用於行動支付等關鍵資訊。
甚至,發錶會前兩天,使用 Face ID 時會齣現的小圓臉動畫,也被挖齣來瞭。
那麼十週年紀念版 iPhone 會叫什麼名字?如果按照 iPhone 命名規則預測新 iPhone 並不難,接在 iPhone 7S 後麵的話,應該就是 iPhone 8 瞭吧。
可這款産品既是 iPhone 10 年集大成之作,又有可能是引領未來 10 年的開山作品,命名總得有些不同吧。於是當時 iPhone 的名字,網路流傳有各種版本,到底是 iPhone 8S、iPhone 10、iPhone X、iPhone Edition,還是 iPhone 十週年尊榮特彆紀念版?
最終讓人們堅信這款産品名稱就是 iPhone X,還是 Steve Troughton-Smith。他深挖 iOS 11 GM 版,最終在發錶會前 3 天,確定當年發錶會 3 款新 iPhone 的名字,也就是後來知道的 iPhone 8、iPhone 8 Plus 及 iPhone X,間接證實蘋果將在發錶會發錶 3 款 iPhone 的傳聞。
至此,iPhone X 的重要部位,幾乎都扒光瞭。
當然瞭,A.pple Spelunker 挖掘綫索的戰績遠不隻這些。就拿近兩年的重磅産品來說,包括最新 iPad Pro 將使用全螢幕設計、AirPods Pro 有降噪功能、16 吋 MacBook Pro 邊框更窄這些關鍵資訊,他們也從各種係統一一挖齣來瞭。
A.pple Spelunker 之所以幾乎百發百中,當然都是因為這些資訊的源頭,都來自蘋果本身。但也正是如此,這件事纔會十分睏難。
蘋果不僅把資訊藏得很深,還會隱藏和僞裝關鍵資訊。想透過解構程式碼發現新品的蛛絲馬跡,不僅要專業有耐性,還需要強大的組織及辨識能力。
A.pple Spelunker 中具代錶性的 Guilherme Rambo 接受採訪時說過這句話。Guilherme Rambo 因在 macOS 開發第三方 WWDC 支援應用而聞名,但真正讓他知名度大開的,是他近幾年挖齣來的大量新品綫索。
▲ Guilherme Rambo。
大傢都知道,蘋果保密一嚮嚴格,尤其是供應鏈及産綫。但涉及的範圍之廣,以緻蘋果很難堵住每個漏洞。
軟體其實也是一樣道理。
Guilherme Rambo 錶示,蘋果生態太強大瞭,iOS、macOS、watchOS、tvOS 互相關聯,支撐整個蘋果硬體及服務係統,各自獨立又互相支援,所以涉及麵實在太廣,要滴水不漏幾乎不可能。
但並不代錶這件事很簡單,甚至比警察破案更難,因為綫索不是直接擺在桌上。A.pple Spelunke 麵對的程式碼很鎖碎,不僅要讀懂它們,還要善於聯想和歸納。談到如何挖掘綫索時,Guilherme Rambo 錶示:
大傢可能以為我們隻要不斷深挖就夠瞭,其實不是。我的電腦有一個檔案,記錄大量綫索。當我遇到猜不齣有什麼用的程式碼時,我會把它記下來。如果後來我看到新係統程式碼有似曾相識的內部裝置辨識時,如 D33、J230 等,就會開啓舊檔案重新找尋這些辨識,看看我之前的紀錄,並嘗試找到關聯性。
就如我爆料很多 iPad Pro 的資訊,其實都是經過長時間整理,且綫索貫穿多個 iOS Beta 版本。
這意味著挖程式碼不僅要跨係統,還得跨版本。
Guilherme Rambo 還錶示,程式碼跟寫文章一樣,不同人有不同風格。要讀懂他人的程式碼,尤其經過僞裝的相當難。A.pple Spelunker 經常互相分享成果,雖然大多時候發現一緻,但也有時候解讀完全是兩個方嚮。
為瞭不走錯方嚮,走少一點冤枉路,其實他們也常參考産業鏈資訊的預測報告,得到不少幫助:
得到的不隻掌聲,還有噓聲我覺得能發現這些資訊,不隻是我們的功勞,因為經過産業分析後得到的預測,對我們幫助很大。我們經常參考這些資訊,瞭解蘋果的大緻動嚮,盡可能不朝錯的方嚮走。
有強大的劇透能力,如 Guilherme Rambo 等級的 A.pple Spelunker,無論在爆料網站還是自己的社交帳號都相當受歡迎。當然,也要麵對很多指責:
大多數人都喜歡我們的工作,認為我們的工作很酷,但也有部分人不這麼想。他們說蘋果發錶會對他們來說,原本是期待已久的 2 小時電視節目,然而我們劇透之後,變成 2 小時的廣告。
我尊重他們的意見,但我並不同意。我每次發錶會都會看,但我關注的並不是發錶什麼,而是蘋果為什麼發錶這些新品。這些新品對我、其他消費者有什麼樣的體驗,纔是最重要的。
而這些資訊我們發現不瞭。
當問到有沒有來自蘋果的壓力時,Guilherme Rambo 錶示有,但並不是不準他挖程式碼,而是隨著蘋果各種升級防止逆嚮工程,要挖掘綫索沒有以前容易瞭。
去年 8 月,Guilherme Rambo 的蘋果開發者帳號被封。這件事在 Raddit 及其他網站引起熱議。不少人懷疑是因為 Guilherme Rambo 的爆料違反開發者協定的保密事項,並錶示有可能遭永久禁號。
但兩個月之後,Guilherme Rambo 的開發者帳號就迴來瞭。雖然 Guilherme Rambo 並沒有說明遭封號的原因,但他曾在採訪時透露他和蘋果的微妙關係:
對這些問題,我無法透露太多。但我可以說的是,雖然不是經常,但我們之間確實保持聯係。且我從朋友得知,蘋果一些員工其實還滿喜歡我的工作,雖然我不知道為什麼。