1. 程式人生 > >iOS工程中的info.plist檔案的完整研究

iOS工程中的info.plist檔案的完整研究

我們建立一個工程後,會在Supporting files下面看到一個"工程名-Info.plist"的檔案,這個是對工程做一些執行期配置的檔案,很重要,不能刪除。

如果你在網上下載的工程中的這個檔名只是Info.plist,那麼恭喜你,這個工程太老了,是用包含SDK2.0以前的Xcode生成的,不過沒關係,不影響使用。

如果你使用文字編輯器開啟這個檔案,你會發現這是一個XML格式的文字檔案,一般我們不用文字編輯器直接編輯這個檔案,而是通過Xcode編輯。

下面是這個檔案的一個例子:

下面是對這裡可能出現的欄位的解釋:

Localiztion native development region --- CFBundleDevelopmentRegion 本地化相關,如果使用者所在地沒有相應的語言資源,則用這個key的value來作為預設.

Bundle display name --- CFBundleDisplayName 設定程式安裝後顯示的名稱。應用程式名稱限制在10-12個字元,如果超出,將被顯示縮寫名稱。

Executaule file -- CFBundleExecutable 程式安裝包的名稱

Icon file --- CFBundleIconFile 應用程式圖示名稱,一般為icon.png

Bundle identifier --- CFBundleIdentifier 該束的唯一標識字串,該字串的格式類似com.yourcompany.yourapp,如果使用模擬器跑你的應用,這個欄位沒有用處,如果你需要把你的應用部署到裝置上,你必須生成一個證書,而在生成證書的時候,在apple的網站上需要增加相應的app IDs.這裡有一個欄位Bundle identifier,如果這個Bundle identifier是一個完整字串,那麼檔案中的這個欄位必須和後者完全相同,如果app IDs中的欄位含有萬用字元*,那麼檔案中的字串必須符合後者的描述。

InfoDictionary version --- CFBundleInfoDictionaryVersion  Info.plist格式的版本資訊

Bundle OS Type code -- CFBundlePackageType:用來標識束型別的四個字母長的程式碼,(網上找的,不解??)

Bundle versions string, short --- CFBundleShortVersionString 面向使用者市場的束的版本字串,(網上找的,不解??)

Bundle creator OS Type code --- CFBundleSignature:用來標識建立者的四個字母長的程式碼,(網上找的,不解??)

Bundle version --- CFBundleVersion 應用程式版本號,每次部署應用程式的一個新版本時,將會增加這個編號,在app store上用的。

Application require iPhone environment -- LSRequiresIPhoneOS:用於指示程式包是否只能執行在iPhone OS 系統上。Xcode自動加入這個鍵,並將它的值設定為true。您不應該改變這個鍵的值。

Main nib file base name -- NSMainNibFile 這是一個字串,指定應用程式主nib檔案的名稱。如果您希望使用其它的nib檔案(而不是Xcode為工程建立的預設檔案)作為主nib檔案,可以將該nib檔名關聯到這個鍵上。nib檔名不應該包含.nib副檔名。這個欄位可以刪除,你可以參考我前面的文章,main函式研究。

supported interface orientations -- UISupportedInterfaceOrientations 程式預設支援的方向。
 

下面是轉載的。

Application uses Wi-Fi
如果應用程式需要wi-fi才能工作,應該將此屬性設定為true。這麼做會提示使用者,如果沒有開啟wi-fi的話,開啟wi-fi。為了節省電力,iphone會在30分鐘後自動關閉應用程式中的任何wi-fi。設定這一個屬性可以防止這種情況的發生,並且保持連線處於活動狀態

更多的欄位資訊可以參考開發者網站。