XCode 项目配置说明

项目配置:

基本项(Basic)
1、Architectures(指令集)——设置你想支持的指令集,目前ios的指令集有以下几种:


(1)armv7,支持的机器iPhone4,iPhone4S
(2)armv7s,支持的机器iPhone5,iPhone5C
(3)arm64,支持的机器:iPhone5S及之后版本
机器对指令集的支持是向下兼容的,因此armv7的指令集是可以运行在iphone5S的,只是效率没那么高而已~

Valid architectures : 指即将编译的指令集。

**Build Active Architecture Only : **是否只编译当前适用的指令集。
根据最新的12月份携程APP iOS机型分布,其实4和4S的占比在5%以下,所以我们的指令集最低必须基于armv7(低于2%可以考虑不支持,现在4S还可以升级iOS9,免为其难支持一下). 因此,Architecture的值选择:armv7 armv7s arm64
1、如果想自己的app在各个机器都能够最高效率的运行,则需要将Build Active Architecture Only改为NO,Valid architectures选择对应的指令集:armv7 armv7s arm64。这个会为各个指令集编译对应的代码,因此最后的 ipa体积基本翻了3倍。(如果不在乎app大小的话,应该这样做)
2,如果想让app体积保持最小,则现阶段可以选择Valid architectures不支持armv7s,可以减少部分体积,我们的SDK就是这么干的。(ps:不可能只支持armv7,苹果早都要求上架app必须支持64位了)

Base SDK ----当前编译用的SDK版本。

iPhone OS Deployment Target----指的是编译出的程序将在哪个系统版本上运行。
iPhone OS的版本众多,很多用户由于各种各样的原因没有升级到最新版,这就给我们开发者带了麻烦。作为开发者,我们都希望软件的受众越多越好。怎么样让软件尽量适应最多的iPhone OS?
这里我们就应该了解iPhone项目的Base SDK和iPhone OS Deployment Target。 Base SDK指的是当前编译用的SDK版本。iPhone OS Deployment Target指的是编译出的程序将在哪个系统版本上运行。
用更简单实用的语句描述如下:
Base SDK设置为当前xcode所支持的最高的sdk版本,比如"latest iOS(iOS9.2)"。iPhone OS Deployment Target设置为你所支持的最低的iPhone OS版本,比如"iPhone OS 7.0"(目前我们的app最低支持到7.0,支付宝SDK的有一个版本最低支持到7.1 ...)。
这样设置之后,你的程序就可以运行于从iPhone OS 7.0 到 9.0的设备之上。当然,前提是你没有用到7.0之后新加的API。当然在程序中也可以对系统版本进行判断,使用不同的API。 如下形式进行简单判断

if ([[[UIDevice currentDevice] systemVersion] floatValue] < 9.0) {
      ...
  }

2、Build Options:


validate Built Product:boolean 类型,指定是否执行产品验证测试(就是说是否使用你的证书进行验证测试)。一般在Debug版本设置成NO,release版本设置成Yes。
当你使用的证书无效时,常提示错误:
warning: Application failed codesign verification. The signature was invalid, contains disallowed entitlements, or it was not signed with an iPhone Distribution Certificate. (-19011)
当然你可以设置成No,不进行验证。
在targets》build setting》validate built Product里面设置release为NO,警告消失。

3、Code Signing 代码签名


Code Signing Identity-----代码签名的身份,即选择签名证书,一是开发证书,二是发布证书。
开发的时候用Development,比如下模拟器,下真机测试。如果是上传app store 上就应该用Distribution 设置的时候全部统一设置成一样就好了。
Code signing 对你来说,最主要的意义就是它能让你的App在设备上运行。不管是你自己的设备,甲方客户的,还是在App store上购买你的消费者。如果没有code signing,你只可以在模拟器上,或者一台越狱过的机器上运行你的应用----当然,仅仅如此是不能满足我们的。模拟器的测试仅仅是一种初步测试,模拟器不能替代真机调试,因为真正的设备会通常比模拟器慢。模拟器使用的是你的MAC机上的处理器,而一台真正的iphone可远远没有这种条件。所以如果你不在设备上真正运行,你可能就会忽略实际的性能问题。
当然在XCode6以后,苹果已经可以让非付费开发者用户可以进行真机调试,十分方便。在真机运行时,点击<code>Fix Issue</code>即可


4、Search Paths 查询路径


Always Search User Paths --- 是否搜索用户路径

Xcode Header Path的设置 Header Search Paths是一定会去搜索的。 而UserHeader Search Paths只有在Always Search User Paths为Yes时才会被搜索。

**Header Search Paths (HEADER_SEARCH_PATHS) **------This is a list of paths to folders to be searched by the compiler for included or imported header files when compiling C,Objective-C, C++, or Objective-C++ source files.

Library Search Paths (LIBRARY_SEARCH_PATHS) -------This is a list of paths to folders to be searched by the linker for static and dynamic libraries used by the product.

**Framework Search Paths (FRAMEWORK_SEARCH_PATHS) **-------This is a list of paths to folders containing frameworks to be searched by the compiler for both included or imported header files when compiling C, Objective-C, C++, or Objective-C++, and by the linker for frameworks used by the product.
**Rez Search Paths (REZ_SEARCH_PATHS) **----This is a list of paths to search for files included by CarbonResource Manager resources and compiled with the Rez tool.

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,332评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,508评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,812评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,607评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,728评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,919评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,071评论 3 410
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,802评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,256评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,576评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,712评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,389评论 4 332
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,032评论 3 316
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,798评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,026评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,473评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,606评论 2 350

推荐阅读更多精彩内容