info.plist文件
简单说一下,info.plist 是项目运行配置文件,属性列表文件,用来存储用户设置,存储捆绑信息。
Bundle display name(CFBundleDisplayName)-程序安装后显示的名称,限制在10-12个字符,如果超出,将被显示缩写名称。默认显示的是工程名称。
Icon file(CFBundleIconFile)-app图标名称,一般为Icon.png
Bundle version(CFBundleVersion)-应用程序的,每次往App Store上发布一个新版本时,需要增加这个版本号
Main storyboard file base name(NSMainStoryboardFile)-主storyboard文件的名称,在项目的工程可以修改Main Inerface属性也可以设置主storyboard文件,并且修改后info.plist文件中的信息会自动修改。
Bundle identifier(CFBundleIdentifier)-项目的唯一,部署到真机时用到,这是与其他区分的唯一标识,若此标识相同,后部署的app将覆盖之前部署的app。
实际上plist文件本质上就是一种特殊的XML文件。
pch文件
项目的Supporting files下面有个“工程名-Prefix.pch”文件,也是一个头文件,pch头文件的内容能被项目中的其他所有源文件共享和访问。是一个预编译文件。
pch文件的作用:
1.存放一些全局的宏(整个项目中都用得上的宏)
2.用来包含一些全部的头文件(整个项目中都用得上的头文件)
3.能自动打开或者关闭日志输出功能
自动打开或者关闭日志输出功能的代码遵循以下格式,因为NSlog()是OC中的方法,所以只有后缀为.m或.mm文件才用得着。
#ifdef __OBJC__
//你的代码
#endif
xode6 添加预编译文件
一直在用xcode6开发,但项目都是在xcode5上创建的,所以一直没注意到,xcode6竟然干掉pch文件了。
为什么xcode6没有自动创建pch文件呢?
简单地看:我们在写项目的时候,大部分宏定义,头文件导入都在这里,Xcode6去掉Precompile Prefix Header的主要原因可能在于Prefix Header大大的增加了Build的时间。没有了Prefix Header之后就要通过手动@import来手动导入头文件了,在失去了编程便利性的同时也降低了Build的时间。具体原因
StackOverFlow上讨论的已经比较清晰了
如何在Xcode6中添加pch(Precompile Prefix Header)?
1,Command+N,打开新建文件窗口:ios->other->PCH file,创建一个pch文件:“工程名-Prefix.pch”:
2,将building setting中的precompile header选项的路径添加“$(SRCROOT)/项目名称/pch文件名”(例如:$(SRCROOT)/LotteryFive/LotteryFive-Prefix.pch)
可以了,编译一下程序,如果有错误检查一下添加的路径是否正确。
3,将Precompile Prefix Header为YES,预编译后的pch文件会被缓存起来,可以提高编译速度