iOS开发之info.pist文件和.pch文件

iOS开发之info.pist文件和.pch文件

如果你是iOS开发初学者,不用过多的关注项目中各个文件的作用。因为iOS开发的学习路线起点不在这里,这些文件只会给你学习带来困扰。

打开一个项目,我们会看到4个主文件夹。

Test文件夹主要是单元测试相关,不做介绍

Frameworks文件夹中存放的是项目依赖的一些框架

Products文件夹主要是MAC开发中使用,iOS开发不用理会。

这里主要介绍与工程同名的文件夹内的常见的文件。

1. info.plist文件

建立一个工程后,会在Supporting files文件夹下看到一个“工程名-Info.plist”的文件,该文件对工程做一些运行期的配置,非常重要,不能删除

iOS开发之info.pist文件和.pch文件

• 在旧版本Xcode创建的工程中,这个配置文件的名字就叫“Info.plist”

• 项目中其他Plist文件不能带有“Info”这个字眼,不然会被错认为是传说中非常重要的“Info.plist”。同样,若你新接触一个项目,想要看它的配置信息,可以找带info字眼的plist文件

• 项目中还有一个InfoPlist.strings的文件,跟Info.plist文件的本地化相关

打开info.plist文件如下图:

iOS开发之info.pist文件和.pch文件

我们可以看到这是一个字典,字典中存放的是很多的健值对。我们可以在这里添加一些项目的配置。下面介绍一些比较重要的我们经常用到的一些属性:

常见属性(红色部分是用文本编辑器打开时看到的key)

Localiztion native development region(CFBundleDevelopmentRegion)-本地化相关

Bundle display name(CFBundleDisplayName)-程序安装后显示的名称,限制在10-12个字符,如果超出,将被显示缩写名称。默认显示的是工程名称,如果你修改了这个值,有两点需要注意:

1. 卸载之前已经部署的应用

2. 清除Xcode的缓存,从新部署

不然app的名称修改不会成功。

Icon file(CFBundleIconFile)-app图标名称,一般为Icon.png

Bundle version(CFBundleVersion)-应用程序的内部版本号,用于记录开发版本

Bundle version string,short(CFBundleShortVersionString)应用程序的发布版本号,在App Store更新应用要保证目前版本大于上一版本。

Main storyboard file base name(NSMainStoryboardFile)-主storyboard文件的名称,在项目的工程配置可以修改Main Inerface属性也可以设置主storyboard文件,并且修改后info.plist文件中的信息会自动修改。

Bundle identifier(CFBundleIdentifier)-项目的唯一标识,部署到真机时用到,这是与其他app区分的唯一标识,若此标识相同,后部署的app将覆盖之前部署的app。

实际上plist文件本质上就是一种特殊的XML文件。

2. pch文件

项目的Supporting files文件夹下面有个“工程名-Prefix.pch”文件,也是一个头文件,pch头文件的内容能被项目中的其他所有源文件共享和访问。

pch文件的作用:

1.存放一些全局的宏(整个项目中都用得上的宏)

2.用来包含一些全部的头文件(整个项目中都用得上的头文件)

3.能自动打开或者关闭日志输出功能

自动打开或者关闭日志输出功能的代码遵循以下格式,因为NSlog()是OC中的方法,所以只有后缀为.m或.mm文件才用得着。

#ifdef __OBJC__

//你的代码

#endif

如下:

#ifdef __OBJC__

#import <UIKit/UIKit.h>

#import <Foundation/Foundation.h>

#import "MJPerson.h"

#ifdef DEBUG  // 调试阶段,DEBUG的宏是系统在调试阶段自动添加的,所以只要判断有没有定义过DEBUG这个宏就可以在发布阶段自动的去掉项目中的所有的日志输出语句。

#define CLLog(...) NSLog(__VA_ARGS__)

#else // 发布阶段

#define CLLog(...)

#endif
上一篇:HTTP1.1中CHUNKED编码解析


下一篇:Hibernate (一)