如何ios 读取plistInfo.plist里自己添加的信息

查看:3719|回复:3
初级工程师
我想要从info.plist中读取版本信息到代码里面,最好是一个字符串。
我应该如何做呢?
助理工程师
先读取路径,然后获取字符串数组
参考下面代码:
& && &&&NSString*
& && &&&NSArray*
& && &&&path = [[NSBundle mainBundle] pathForResource:@&info& ofType:&plist&];
& && &&&resources = [NSArray arrayWithContentsOfFile:path];
助理工程师
2楼说的正确,利用NSBundle获得路径,再读取
助理工程师
你能这么做: [[NSBundle mainBundle] infoDictionary]
复制代码代码: NSDictionary* infoDict = [[NSBundle mainBundle] infoDictionary];
NSString* version = [infoDict objectForKey:@&CFBundleVersion&];Info.plist文件详解 - 简书
Info.plist文件详解
Info.plist文件详解
注意:Info.plist文件首字母大写。。每次新建一个项目工程,Xcode都会自动创建一个Info.plist文件,这个文件的主要作用就是提供应用在运行期的一些配置,相当的重要,不能随意删除。这个文件其实是一个XML文件,如果你用文本编辑器直接打开编辑这个文件,就会发现他是一个XML格式组织起来的文件,不过我们一般直接在Xcode中操作。
我们新建一个helloworld项目,它的Info.plist文件内容如下:
Info-plist文件截图
接下来我们来看看他每一个字段的含义
Localization native development region ---& 本地化相关数据,如果用户没有响应的语言资源,则默认使用这个key的value
Executable file ---& 程序安装包的名称
Bundle indentifier ---&
唯一标识字符串,该字符串的格式类myhexin.helloword,在模拟器上此字段没有什么意义,但是如果要发布App,则需要这个Bundle indentifier
InfoDictionary version ---&
Info.plist格式的版本信息
Bundle name ---& 程序安装后在界面上显示的名称。应用程序名字限制在10-12个字符,如果超出限制,将被显示缩写名称
Bundle OS Type code ---& 程序安装包的名称 (暂时不知道是啥作用)
Bundle versions string, short ---& (暂时不知道是啥作用)
Bundle creator OS Type code ---& (暂时不知道是啥作用)
Bundle version ---& 应用程序版本号,每次部署应用程序的一个新版本时,应该增加这个编号,app store审核需要用
Application require iPhone environment ---& 用于指示程序包是否只能运行在iPhone OS 系统上。默认是YES,即只能安装在Iphone OS系统上11.Launch screen interface file base name ---& 程序启动时的所加载的启动画面,主要成xib文件中加载,这里的值为LaunchScreen,说明从LaunchScreen.storyboard中加载
Mian storyboard file base name ---&程序的启动时的主画面,此文件中的视图将作为程序启动后的主画面
Supported interface orientations ---& 程序默认支持的方向
Required device capabilities ---& 应用程序运行所需的设备限制查看:2389|回复:4
助理工程师
希望在运行时先读取下info.plist里面“Application uses Wi-Fi”项是否为YES
请问应该怎样做?
助理工程师
plist文件可以通过NSDictionary或是NSArray直接指定文件路径来读取~
助理工程师
Bundle version要用objectForKey:@&CFBundleVersion&获取到
Application uses Wi-Fi要用??objectForKey:@&???&
直接用info.plist里面显示的key取获取显然不行的
助理工程师
二楼是正解 先在Bundle中用NSDictionary把info.plist拿到,接下来想取什么字段直接objectForKey取就可以了。
助理工程师
算了,算我没问清楚。
其他的有些我是知道怎么读的,比如Bundle version要用objectForKey:@&CFBundleVersion&获取到
我是不知道Application uses Wi-Fi要用@“????”取}

我要回帖

更多关于 读取plist文件 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信