Xcode 的 plist 字段列表详解

2,889 阅读4分钟
原文链接: www.jianshu.com

Info.plist用于向iOS提供关于app,bundle或者framework的一些重要信息。它指定了比如一个应用应该怎样启动,它如何被本地化,应用的名称,要显示的图标,还有更多。Info.plist文件实际上是苹果预定义schema的XML文件。
为了构建一个设备相关的健,你在健的后面要加上~iphone或者~ipad。
常用字段:

  • 1.在工程中获取版本信息:

      NSDictionary *infoDic = [[NSBundle mainBundle] infoDictionary];
      NSString *localVersion = [infoDic objectForKey:@"CFBundleShortVersionString"];

    2.应用支持http网络请求:
    在Info.plist中添加 NSAppTransportSecurity 类型 Dictionary 在 NSAppTransportSecurity 下添加 NSAllowsArbitraryLoads 类型Boolean ,值设为 YES. 注意类型NSAppTransportSecurity为Dictionary,NSAllowsArbitraryLoads为Boolean,复制粘贴的时候,不要多了空格,segment fault 页面上直接复制,经常会多一个出空格!
    3.iOS10新增了权限设置,如果想要使用相关权限,必须为其添加字段
    麦克风权限:Privacy - Microphone Usage Description 是否允许此App使用你的麦克风?
    相机权限: Privacy - Camera Usage Description 是否允许此App使用你的相机?
    相册权限: Privacy - Photo Library Usage Description 是否允许此App访问你的媒体资料库?
    通讯录权限: Privacy - Contacts Usage Description 是否允许此App访问你的通讯录?
    蓝牙权限:Privacy - Bluetooth Peripheral Usage Description 是否许允此App使用蓝牙?
    语音转文字权限:Privacy - Speech Recognition Usage Description 是否允许此App使用语音识别?
    日历权限:Privacy - Calendars Usage Description 是否允许此App使用日历?
    定位权限:Privacy - Location When In Use Usage Description 我们需要通过您的地理位置信息获取您周边的相关数据
    定位权限: Privacy - Location Always Usage Description 我们需要通过您的地理位置信息获取您周边的相关数据

控制应用的名称:


屏幕快照 2016-09-20 17.51.13.png

CFBundleDisplayName


CFBundleDisplayName字段指定了一个字符串值来标识bundle的显示名称。Finder和其他用户界面组件会把它显示给用户。这个名 称可以与文件系统中的bundle名不同。通过把字段加入适当的.lproj子目录中的InfoPlist.strings文件,就可以实现该字段的本地 化。如果您需要本地化这个字段,您还应该提供一个CFBundleName字段的本地化版本。


CFBundleName


CFBundleName指定了该bundle的简称。简称应该小于16个字符并且适合在菜单和“关于”中显示。通过把它加入到适当的.lproj子文件 夹下的InfoPlist.strings文件中,该字段可以被本地化。如果您本地化了该字段,那您也应该提供一个 CFBundleDisplayName字段的本地化版本。


应用标识+应用版本:


屏幕快照 2016-09-20 17.53.00.png

CFBundleIdentifier


CFBundleIdentifier字段指定了bundle的一个唯一的标识字符串。该标识符采用了类似Java包的命名方式,例如com.apple.myapp。该bundle标识符可以在运行时定位bundle。预置系统使用这个字符串来唯一地标识每个应用程序。

它包含一个唯一标识的字符串,它是从你在iOS Provisioning Portal创建的App ID取得的 App ID包含两个部分:Team ID和Bundle ID


CFBundleShortVersionString


CFBundleShortVersionString字段指定了bundle的版本号。一般包含该bundle的主、次版本号。这个字符串的格式通常是 “n.n.n”(n表示某个数字)。第一个数字是bundle的主要版本号,另两个是次要版本号。该字段的值会被显示在Cocoa应用程序的关于对话框 中。

该字段不同于CFBundleVersion,它指定了一个特殊的创建号。而CFBundleShortVersionString的值描述了一种更加正式的并且不随每一次创建而改变的版本号。


CFBundleVersion


CFBundleVersion字段指定了一个字符串用来标识创建号。该字段的值通常随每一次创建而改变,并且会被显示在Cocoa”关于”对话框中的扩号里。
为了指定一个发布版的bundle的版本信息,可以使用CFBundleShortVersionString字段。参见“CFBundleShortVersionString”。


获取用户权限信息:


屏幕快照 2016-09-20 17.57.35.png

应用图标:


屏幕快照 2016-09-20 17.58.25.png

CFBundleIconFile


CFBundleIconFile字段指定了包含该bundle图标的文件。您给出的文件名不需要包含“.icns”扩展名。Finder会在该bundle的“Resource”文件夹内寻找图标文件。
如果您的bundle使用了自定义的图标,那您就必须指定该属性。假如您没有指定,Finder(和其他应用程序)会使用缺省的图标来显示您的bundle。


此为部分常见的plist字段,想看全部请下载pdf文档.

整理自:www.cnblogs.com/adamleung/p…
blog.csdn.net/swj6125/art…
转载请标明出处,谢谢!!!

如有问题欢迎指正,本人也是参考大神们的文章总结的,可能跟最新的Xcode有点出入!不喜勿喷!

文章上传可能格式上有点问题看着不舒服,所以只写了一部分,想查看全部请下载该文章,pdf文档下载地址:yunpan.cn/ckRv6yDrKtR…(提取码:ce99)