1.Text 文件夹:单元测试
2.Frameworks: 依赖的框架
3.Info.plist:项目配置文件(字典类型文件Dictionary)
功能:保存APP的信息,软件名称等等,相当于身份证。程序加载首先加载配置文件,读取软件名称等作息。
3.1、 Bundle display name:项目名称
3.2、Bundle identifier :项目唯一标识
3.3、Bundle version :项目版本
3.4、info.plist 对应Xcdoe的Project图形界面,改图形界面的东西,随之也会改info.plist
比如屏幕方向等
4.pch宏文件:也是头文件,能被项目中其它所有源文件共享和访问。
pch 作用:假如一个宏,多个文件都需要用到,怎么解决,设置个公用的头文件(宏),同时导入这个头文件。
4.1、放全局的宏
4.2、导入全局需要的头文件,一般开发中放工具类的头文件或者分类文件等。
4.3、管理日志输出为什么要管理日志输出,因为日志输出非常耗性能,一般发布时不知道打印日志,只需调试的时候才需要。
#define WINLog(...) NSLog(__VA_ARGS__); //...表示能接收任何参数 __VA_ARGS__ 表示左边...的参数会替代到右边的NSLog中。
(1)不想打印,直接注释后面的 #difine WINLog(...) //NSLog(__VA_ARGS__)
(2)通过一个宏进行条件编译,在高度阶段,xcode会自动定义一个Run DEBUG宏,利用宏进行条件编译。
#ifdef __OBJC__
#ifdef DEBUG // 调试阶段
#define HMLog(...) NSLog(__VA_ARGS__)
#else // 发布阶段
#define HMLog(...)
#endi
#endif
(3)在pch写有关OC的东西,最好放在#indef __OBJC__,Xcdoe在每个OC文件中都有定义这个宏,也就意味只有OC的文件才拥有这些宏,避免项目中有C文件时,报错。
(4)如果在C文件中,使用#import 就会报错,因为C文件不能识别#import ,只有OC才能识别。在pch中的东西能被项目中的所有文件共享,c文件共享#import就报错。