info.plist文件php
简单说一下,info.plist 是项目运行配置文件,属性列表文件,用来存储用户设置,存储捆绑信息。html
Bundle display name(CFBundleDisplayName)-程序安装后显示的名称,限制在10-12个字符,若是超出,将被显示缩写名称。默认显示的是工程名称。ios
Icon file(CFBundleIconFile)-app图标名称,通常为Icon.png编程
Bundle version(CFBundleVersion)-应用程序的版本号,每次往App Store上发布一个新版本时,须要增长这个版本号xcode
Main storyboard file base name(NSMainStoryboardFile)-主storyboard文件的名称,在项目的工程配置能够修改Main Inerface属性也能够设置主storyboard文件,而且修改后info.plist文件中的信息会自动修改。缓存
Bundle identifier(CFBundleIdentifier)-项目的惟一标识,部署到真机时用到,这是与其余app区分的惟一标识,若此标识相同,后部署的app将覆盖以前部署的app。app
实际上plist文件本质上就是一种特殊的XML文件。ide
pch文件ui
项目的Supporting files文件夹下面有个“工程名-Prefix.pch”文件,也是一个头文件,pch头文件的内容能被项目中的其余全部源文件共享和访问。是一个预编译文件。url
pch文件的做用:
1.存放一些全局的宏(整个项目中都用得上的宏)
2.用来包含一些所有的头文件(整个项目中都用得上的头文件)
3.能自动打开或者关闭日志输出功能
自动打开或者关闭日志输出功能的代码遵循如下格式,由于NSlog()是OC中的方法,因此只有后缀为.m或.mm文件才用得着。
#ifdef __OBJC__
//你的代码
#endif
xode6 添加预编译文件
一直在用xcode6开发,但项目都是在xcode5上建立的,因此一直没注意到,xcode6居然干掉pch文件了。
简单地看:咱们在写项目的时候,大部分宏定义,头文件导入都在这里,Xcode6去掉Precompile Prefix Header的主要缘由可能在于Prefix Header大大的增长了Build的时间。没有了Prefix Header以后就要经过手动@import来手动导入头文件了,在失去了编程便利性的同时也下降了Build的时间。具体缘由
StackOverFlow上讨论的已经比较清晰了
StackOverFlow:为何xcode6没有自动建立pch文件呢?
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文件会被缓存起来,能够提升编译速度