💡小知識:Apple 裝置 UDID 拼湊規則

Apple 裝置的 UDID 並非隨機,跟 SoC 有直接關係。知道規則,能幫助判斷設備年代。

今天來分享個我最近才學到的開發小知識。

你知道嗎?Apple 各裝置的 UDID,也就是顯示在 Xcode Devices and Simulators 視窗這個欄位的數值,其實是拼湊出來的。

Xcode Devices and Simulators 視窗上的 Identifier 資訊
Xcode Devices and Simulators 視窗上的 Identifier 資訊

這是我在先前「探究 iPhone 的 USB 速度對開發體驗的影響」的過程中學到的事情:

Apple 的 lockdowndlibMobileGestalt library 都可以提供裝置的獨特 ID,也就是 UDID (Unique Device Identifier)。

前者需要 root 權限,應該是給系統內部使用。一般開發者有需要取得 UDID 的話,應該使用後者,透過 UniqueDeviceID key 即可。

UDID 是如何拼湊出來的?