1、Info.plist文件:项目配置文件 

 主要作用:保存应用的信息,软件名称等等,相当于身份 证。程序加载首先加载配置文件,读取软件名称等信息。

 Bundle display name:项目名称

Bundle identifier:项目的唯一标识

Bundle versions string, short:项目版本号

// File:获取文件的全路径 => 文件在哪(主bundle)
NSString *filePath = [[NSBundle mainBundle] pathForResource:@"Info.plist" ofType:nil]; // 1.解析info,plist
NSDictionary *dict = [NSDictionary dictionaryWithContentsOfFile:filePath]; // 获取当前的版本号
NSString *Verision = dict[@"CFBundleShortVersionString"]; // 第二种方式获取info.plist信息
NSString *Verision = [NSBundle mainBundle].infoDictionary[@"CFBundleShortVersionString"];

Info.plist对应xcode的TARGETS中的General部分的图形界面,改图形界面的东西,就会改变 Info.plist。

2、.pch文件

 主要作用:<1>.存放一些公用的宏。详情可以参考我的另一篇博客自定义公用的宏,地址:http://www.cnblogs.com/ming1025/p/6093547.html。

      <2>.导入一些全局都需要的头文件,一般开发中放工具类的头文件, 或者分类头文件等。

      <3>. 管理日志输出:为什么要管理日志输出,因为日志输出非常耗性能,一般发布的时候不需要日志输出,只有调试的时候才需要。

      

// 3.自定义Log(输出日志)

// ...标示在宏里面的可变参数
// __VA_ARGS__ 标示函数里面的可变参数 #ifdef DEBUG // 调试 #define XMGLog(...) NSLog(__VA_ARGS__) #else // 发布 #define XMGLog(...) #endif

  注意点:在pch写的有关OC的东西,最好放在#ifdef __OBJC__  #endif之间。因为Xcode在每个OC文 件中都定义了这个宏,也就意味着只有OC中的文件才拥有这些宏,避免项目中有C文件的时候,报错。如果在c文件中,使用#import,就会报错,因为c文件不能识别#import, 只有OC文件才能识别。在pch中的东西能被项目中的所有文件共享,c文 件共享#import就报错。

  

// __OBJC__每个OC文件都会自动定义这个宏

#ifdef __OBJC__

#import <UIKit/UIKit.h>
#import <Foundation/Foundation.h> //写在里面 #endif #import "ViewController.h" //不要写在外面

 

iOS大神班笔记01-项目中常见的文件的更多相关文章

  1. iOS大神班笔记03-UIApplication

    UIApplication简介: UIApplication对象是应用程序的象征. 每一个应用程序都有自己的UIApplication对象,而且是单例. 一个iOS程序启动后创建的第一个对象就是UIA ...

  2. iOS大神班笔记04-View的加载

    iOS开发中一个控制器创建View的过程(注意标注的地方): 1.通过storyboard加载 UIStoryboard的三个方法: + (UIStoryboard *)storyboardWithN ...

  3. iOS大神班笔记02-模仿苹果创建单例

    首先我们得要知道苹果是如何实现单例的:1.不能外界调用alloc,一调用就崩掉,其实就是抛异常(类内部第一次调用alloc就不崩溃,其他都崩溃). 2.提供一个方法给外界获取单例.  3.内部创建一次 ...

  4. iOS项目中常见的文件

    html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,bi ...

  5. XamarinSQLite教程Xamarin.iOS项目中打开数据库文件

    XamarinSQLite教程Xamarin.iOS项目中打开数据库文件 以下是打开MyDocuments.db数据库的具体操作步骤: (1)将Mac电脑上的MyDocuments.db数据库移动到W ...

  6. XamarinSQLite教程在Xamarin.iOS项目中定位数据库文件

    XamarinSQLite教程在Xamarin.iOS项目中定位数据库文件 开发者可以在指定的路径中找到复制的数据库文件,具体的操作步骤如下: (1)单击Mac电脑中Finder菜单中的“前往”|“前 ...

  7. m_Orchestrate learning system---三十、项目中的dist文件一般是做什么的

    m_Orchestrate learning system---三十.项目中的dist文件一般是做什么的 一.总结 一句话总结: Bootstrap switch:dist 目录是放最终的js和css ...

  8. delphi项目中的modelsupport文件夹

    delphi项目中的modelsupport文件夹 今天写着写着突然发现多了一个这个文件夹..苦思不得其解  看着又难受  删了又重建 终于找到了  存此备查;Tools--option--toget ...

  9. XamarinSQLite教程在Xamarin.Android项目中提取数据库文件

    XamarinSQLite教程在Xamarin.Android项目中提取数据库文件 由于不能直接打开该文件,开发者需要先将数据库文件从Android系统中提取出来.操作步骤如下. (5)选择MyDoc ...

随机推荐

  1. java基础 final 修饰成员变量 只能赋值一次问题

    final int a; public Fu(){ a=1; }

  2. windows tensorflow 简单安装

    需要64位系统windows, 下载64位的python3.5 官网下载地址:https://www.python.org/downloads/release/python-352/ 百度云下载地址: ...

  3. 爬虫学习(十三)——xpath基础学习

    lxml的作用 lxml是HTML.xml的解析器,主要的功能是如何解析和提取HTML和xml数据 lxml和正则一样,也是使用C来实现的,是一款高性能的python HTML/xml解析器,我们可以 ...

  4. SSH 登录时出现如下错误:No supported key exchange algorithms

    https://help.aliyun.com/knowledge_detail/41486.html

  5. Redis数据库 : python与java操作redis

    redis 包 from redis import * 连接: r = StrictRedis(host='localhost', port='6379') 读写:r.set('key','value ...

  6. python基础之面向对象编程介绍、类和对象

    面向对象变成介绍 面向过程编程 核心是过程(流水线式思维),过程即解决问题的步骤,面向过程的设计就好比精心设计好一条流水线,考虑周全什么时候处理什么东西.主要应用在一旦完成很少修改的地方,如linux ...

  7. HTML中body相关标签-02

    今日内容: 字体标签: h1~h6.<font>.<u>.<b>.<strong><em>.<sup>.<sub> ...

  8. android IPC 进程间通讯

    参考资料: http://blog.csdn.net/birdsaction/article/details/39451849 在这里我说一下学习技术的方法,别人的博客,别人的东西,再简单,自己没有写 ...

  9. 我今天的收获,必备stadio 插件

    1.ADBWIFI 必须的,说不定你就用到了. 2.ADB Idea 必须 3.JavaDoc 4.Translation 5.Gradle Killer

  10. HEXO next live2d插件删除问题

    title: HEXO next live2d插件删除问题 date: 2018-03-06 13:09:12 updated: tags: [hexo,next,建站,学习,前端技术,疑问] des ...