Info.plist文件控制應用的全局配置,例如bundle name,display name。
先來看一下默認創建的Info.plist文件

右鍵左側的Info.plist文件,可以open as “property list”或者“source code”來查看。例如下圖:

接下來,我將以code方式查看,並添加下列常用配置:
<key>CFBundleURLTypes</key>
<array>
<dict>
<key>CFBundleTypeRole</key>
<string>Editor</string>
<key>CFBundleURLIconFile</key>
<string>Icon@3x</string>
<key>CFBundleURLName</key>
<string>com.alongway.base</string>
<key>CFBundleURLSchemes</key>
<array>
<string>baseapp</string>
</array>
</dict>
</array>
<key>LSApplicationQueriesSchemes</key>
<array>
<string>wechat</string>
<string>weixin</string>
<string>sinaweibohd</string>
<string>sinaweibo</string>
<string>sinaweibosso</string>
<string>weibosdk</string>
<string>weibosdk2.5</string>
<string>mqqapi</string>
<string>mqq</string>
<string>mqqOpensdkSSoLogin</string>
<string>mqqconnect</string>
<string>mqqopensdkdataline</string>
<string>mqqopensdkgrouptribeshare</string>
<string>mqqopensdkfriend</string>
<string>mqqopensdkapi</string>
<string>mqqopensdkapiV2</string>
<string>mqqopensdkapiV3</string>
<string>mqzoneopensdk</string>
<string>wtloginmqq</string>
<string>wtloginmqq2</string>
<string>mqqwpa</string>
<string>mqzone</string>
<string>mqzonev2</string>
<string>mqzoneshare</string>
<string>wtloginqzone</string>
<string>mqzonewx</string>
<string>mqzoneopensdkapiV2</string>
<string>mqzoneopensdkapi19</string>
<string>mqzoneopensdkapi</string>
<string>mqqbrowser</string>
<string>mttbrowser</string>
<string>renrenios</string>
<string>renrenapi</string>
<string>renren</string>
<string>renreniphone</string>
<string>laiwangsso</string>
<string>yixin</string>
<string>yixinopenapi</string>
<string>instagram</string>
<string>whatsapp</string>
<string>line</string>
<string>fbapi</string>
<string>fb-messenger-api</string>
<string>fbauth2</string>
<string>fbshareextension</string>
<string>baidumap</string>
<string>iosamap</string>
<string>comgooglemaps</string>
</array>
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
</dict>
<key>NSLocationWhenInUseUsageDescription</key>
<string>請求訪問您的位置信息</string>
<key>UIAppFonts</key>
<array/>
<key>UIApplicationShortcutItems</key>
<array>
<dict>
<key>UIApplicationShortcutItemIconFile</key>
<string>3dTouchBtnOne</string>
<key>UIApplicationShortcutItemTitle</key>
<string>按鈕1</string>
<key>UIApplicationShortcutItemType</key>
<string>com.alongway.base.one</string>
</dict>
<dict>
<key>UIApplicationShortcutItemIconFile</key>
<string>3dTouchBtnTwo</string>
<key>UIApplicationShortcutItemTitle</key>
<string>按鈕2</string>
<key>UIApplicationShortcutItemType</key>
<string>com.alongway.base.two</string>
</dict>
<dict>
<key>UIApplicationShortcutItemIconFile</key>
<string>3dTouchBtnThree</string>
<key>UIApplicationShortcutItemTitle</key>
<string>按鈕3</string>
<key>UIApplicationShortcutItemType</key>
<string>com.alongway.base.three</string>
</dict>
</array>
<key>UIBackgroundModes</key>
<array>
<string>fetch</string>
<string>remote-notification</string>
</array>
然后已列表方式查看結果,如下圖:

說明:
1.URL types選項,描述應用被其他應用調起的配置,url schemes數組目前只有一個item,表示只有baseapp://協議可以調起該應用,如果后續有添加分享SDK,會增加更多的item,例如sina.xxxx、QQxxx
2.LSApplicationQueriesSchemes選項,則決定了本應用可調起的其他應用,例如想調起微信,則需要添加item:wechat,目前添加了48個應用url scheme
3.App Transport Security Settings選項,決定了應用可以訪問哪些安全的HTTPS協議域名,上述設置表示可以訪問http和https的所有域名,否則就需要添加“Exception Domains”選項,自己羅列安全的域名
4.NSLocationWhenInUseUsageDescription選項,用於iOS8以后用戶使用定位服務時候的提示內容。NSLocationUsageDescription用於iOS6-8之間的版本。類似的選項還有相機、通訊錄、藍牙等的提示
5.Fonts provided by application選項,添加自定義字體文件名稱,一般為ttf文件,后續再說明代碼中如何使用自定義字體
6.UIApplicationShortcutItems選項,適用於iPhone6s之后的設備,提供本應用icon的3d Touch菜單,后續再說明代碼中如何使用
7.Required background modes選項,設置應用在后台可進行短時間內的下載活動
Info.plist文件是很重要的應用配置文件,更多選項,可以在Xcode -> Help -> Documentation中查看。
