上周起大傢伙紛紛開始上手第三代iPad了。由於新iPad採用了Retina顯示屏,解析度較上一代iPad增加了一倍(譯者:長寬增加一倍,像素是上一代的四倍)。為了支援新增的這些個像素,iOS開發人員需要考慮升級自己的iPad應用,我在下文列舉了一些必須注意的事項。
一、應用圖片
標準iOS控制項裡的圖片資源,蘋果已經做了相應的升級,我們需要操心的是應用自己的圖片資源。就像當初為了支援iPhone 4而製作的@2x高解析度版本(譯者:以下簡稱高分)圖片一樣,我們要為iPad應用中的圖片製作對應的高分版本。我知道不少開發人員很有預見性的早在iOS 5.0 SDK上就完成了這一步升級。可是我還是要強調一點,那就是之前 Michael Jurewitz (@Jury)在推上提到過的:
如果想讓你的高分圖片顯示在新iPad上,你必須用Xcode 4.3.1 連同iOS 5.1 SDK編譯!
二、應用表徵圖
接下來肯定就是為應用主表徵圖製作高分版本了,因為低分版的表徵圖在新iPad案頭上看起來會慘不忍睹。為了支援更多的iOS裝置、更高解析度的螢幕,iOS開發人員需要為自己的應用準備各種尺寸的主程式表徵圖檔案,而且這個檔案清單貌似會越來越長越來越長……(譯者:歎氣~)。詳情請參考最新的蘋果開發人員文檔 iOS
App Programming Guide 和 iOS
Human Interface Guidelines 。從官方文檔中,我找出來針對新iPad的Retina顯示屏我們需要準備的東西:
iPad主應用表徵圖 (144×144像素):之前用在iPad 1、2代上的是72×72 像素。現在我們需要額外的@2x版本(144×144 像素)。
iPad搜尋結果表徵圖 (100×100像素):這個表徵圖出現在系統搜尋結果中(譯者註:還有在系統設定中,如果應用支援的話)。之前版本用的是50×50像素,現在@2x版本需要100×100像素。
檔案命名和Info.plist檔案:
根據你的應用需要支援的iOS最低版本不同,你可能需要在Info.plist檔案中指定表徵圖檔案名稱,或者是按照蘋果的規範命名不同版本的主表徵圖檔案。最悲催的情況恐怕就是,你搞的是一個即可跑在iPhone也可跑在iPad上的跨平台 app(universal app),並且你打算支援iOS 3.1.x甚至更早的版本(譯者:其實現在iOS 4.0及以上版本的裝置普及率已經很高了,完全沒有必要支援古董級的版本,咱又不是Android)。因為iOS 3.2之前是不支援在Info.plist檔案裡面指定表徵圖檔案的,所以你得使用蘋果指定的規範去命名表徵圖檔案。一個完整的列表差不多就是下面這個樣子:
● Icon.png – 57×57 iPhone應用表徵圖
● Icon@2x.png – 114×114 iPhone Retina顯示屏應用表徵圖
● Icon-72.png – 72×72 iPad應用表徵圖
● Icon-72@2x.png - 144×144 iPad Retina顯示屏應用表徵圖
● Icon-Small.png – 29×29 iPhone 系統設定和搜尋結果表徵圖
● Icon-Small@2x.png – 58×58 iPhone Retina顯示屏 系統設定和搜尋結果表徵圖
● Icon-Small-50.png – 50×50 iPad 系統設定和搜尋結果表徵圖
● Icon-Small-50@2x.png – 100×100 iPad Retina顯示屏 系統設定和搜尋結果表徵圖
如果你的應用僅相容iOS 3.2及之後的版本,那麼你可以在Info.plist檔案裡面指定表徵圖檔案,你不用遵守上面的命名規範,當然你非要那麼命名也沒有問題(譯者:為了便於和美工溝通和日後項目資源的管理,還是建議遵循這套規範)。在iOS 3.2中,蘋果在Info.plist檔案中引入了CFBundleIconFiles鍵,在此其中你可以直接指定應用表徵圖的各種版本。如果你忽略了.png的尾碼名,那麼你也可以忽略高分版本圖片的@2x部分,系統會自動匹配。
蘋果在iOS 5.0中為了支援報刊雜誌(Newsstand)功能,再次引入了一個新的鍵 CFBundleIcons,這讓事情變得更加複雜起來(譯者:再次歎氣~)。這個鍵下含有子鍵CFBundlePrimaryIcon,裡面的CFBundleIconFiles子鍵儲存著在此之前儲存在Info.plist根節點CFBundleIconFiles鍵裡面的內容。如果你的應用僅支援iOS 5.0及之後版本,那麼用一個 CFBundleIcons鍵就可以,否則的話你還需要同時保留CFBundleIconFiles鍵和相關內容。
(譯者:這裡原文講述稍微有點偏差,未提到CFBundlePrimaryIcon,而且比較混亂,令人費解。其實在Xcode裡面以預設開啟Info.plist看到的會是Icon Files和Icon Files(iOS 5)兩組鍵)
總之,為了做到向後相容,這個環節會給開發人員帶來一點小混亂,相當容易犯錯。所以,建議開發人員針對不同的裝置、螢幕組合多做測試。
三、市集截屏圖片
蘋果近期對應用提交做出了規則調整,如若是iPhone、iPod touch應用,必須提交Retina顯示屏高分版本的應用螢幕。具體圖片尺寸要求如下 (前面的尺寸是含系統狀態列情況下的):
- 橫屏: 960×640 或 960×600
- 豎屏: 640×960 或 640×920
目前蘋果尚未對iPad應用提交也做出類似要求,但是為了讓你的應用在新iPad上看起來呼之欲出,現在是時候考慮使用高分版本了。對應的尺寸如下 (前面的尺寸是含有狀態列情況下的):
- 橫屏: 2048×1536 或 2048×1496像素
- 豎屏: 1536×2048 或 1536×2008像素
譯者註:原文評論中有人做了補充的,運行時的載入畫面,針對新iPad螢幕也需要準備,檔案命名和尺寸要求:
- 橫屏: Default-Landscape@2x~ipad.png (2048×1496像素)
- 豎屏: Default-Portrait@2x~ipad.png (1536×2008像素)
原文連結:useryourloaf.com 編譯:伯樂線上
– 陳遠