【学习总结】Info.plist和pch文件的作用
Info.plist
项目中其他Plist文件不能带有“Info”这个字眼,不然会被错认为是非常重要的“Info.plist”
项目中还有一个InfoPlist.strings的文件,跟Info.plist文件的本地化相关(新版本不会自动创建,后面单独作InfoPlist.strings的作用总结)
Localiztion native development region — 本地化相关
Bundle identifier — 这个是软件的唯一标示, 假如有一样标示的软件就会冲突
Bundle name — 程序安装后显示的名称,限制在10-12个字符,如果超出,将被显示缩写名称
Bundle versions string, short 和 Bundle version — 这个是软件的版本号, 假如更新软件,发布到appStore会严格遵守版本号的规则
Main storyboard file base name — 这个是软件的最主要的 storyboard
Supported interface orientations — 这个是软件屏幕的方向 这个是一个数组,下面三项分别列举的是下图 :
Device Orientation
Portrait 竖屏
Upside Down 上下颠倒
Landscape Left 横左
Landscape Right 横右
只要这里勾选了,Info.plist里面的Supported interface orientations数组就会改变
pch文件
苹果官方在xcode6中去掉了pch,为了一些琐碎的头文件引用,可以加快编译速度
所以,需要pch文件,就得手动添加
1 . 创建PCH文件
2 . 配置PCH文件 -> Build Settings -> prefix Header
在上图中输入$(SRCROOT)/xx.pch 后,对比实际路径与配置的路径是否相同(注意pch文件的真实路径,与该路径是否有不同)
3. PCH文件的作用
1. 存放一些全局的宏(整个项目中都用得上的宏)
2. 用来包含一些全部的头文件(整个项目中都用得上的头文件)
3. 能自动打开或者关闭日志的输出功能 (自定义NSLog)
1 /** 2 * 调试阶段 , 一定有DEBUG 3 * 发布阶段 , 自动删除DEBUG 4 * 5 * 判断是否有DEBUG.智能添加删除NSLog 6 */ 7 #ifdef DEBUG 8 #define CwlLog(...) NSLog(__VA_ARGS__) 9 #else 10 #define CWlLog(...) 11 #endif
4. 凡是object-C的代码,需要添加到
#ifdef __OBJC__ //里面的所有内容,只能用到.m文件中或者.h文件中 #endif