A.项目中的常见文件
1.单元测试Test

2.Frameworks(xCode6 创建的SingleView PRoject没有)
依赖框架
3.Products
打包好的文件
4. projectname-Info.plist
全局配置文件
所以最好其他的plist文件不要带有Info字眼

(1)更改项目名
a.修改Bundle display name

b.clean

c.模拟器删除app,重新生成

(2)Bundle Identifier
App唯一标识符
(3)stroyboard入口:Main storyboard file base name
(4)app支持的屏幕方向
5.pch文件
projectname-Prefix.pch
pch头文件中的内容可以被其他文件共享
(1)xCode6 创建pch文件
a.创建一个PCH

b.配置pch到预编译
注意要写对pch文件的路径

(2)pch的作用
a.存放全局宏 #define
1 #define A 1
2 #define B 2
b.全局import #import
1 #import "myhead.h"
c.仅让所有OC项目中的.m文件import foundation和UIKit库
防止其他语言(如C)错误引入
1 #ifdef __OBJC__
2
3 #import <Foundation/Foundation.h>
4 #import <UIKit/UIKit.h>
5
6 #endif
d.调试NSLog优化
系统在调试阶段会配置一个DEBUG宏
1 #ifdef __OBJC__
2
3 #import <Foundation/Foundation.h>
4 #import <UIKit/UIKit.h>
5
6 #ifdef DEBUG
7 #define MyNSLog(...) NSLog(__VA_ARGS__)
8 #else
9 #define MyNSLog(...)
10 #endif
11
12 #endif
注意”__VA_ARGS__”前后是两个下划线
配置之后,使用MyNSLog函数来打印测试信息,在app完成release的版本,MyNSLog会自动失效
1 MyNSLog(@"测试 %d - %d", A, B);
out:
2014-12-17 13:22:33.888 DatePicker[20702:1696549] 测试 1 - 2