我的开发环境为:Mac OS X EI Capitan(10.11.6),Xcode 7.3.1

首先说明一下这个项目的初衷,我并非要创建一个完整的上架应用,旨在创建一个可运行的,通用配置、架构,提供通用组件和辅助工具的基础项目。以达到,克隆或者下载就可以快速装配新项目,聚焦于实际的应用逻辑开发。所以,我命名这个项目为“base”,而且项目会在github上同步,可以配合博客和git提交日志查看。

我以Single View Application为例,创建项目。我习惯于纯代码编程,该模板初始结构适当,后续忽略的文件较少。

上述选项界面,提示几点:
1.设备选择通用类型,我希望可以适配全设备
2.如果数据储存有FMDB或者LevelDB之类的方案,可以不用Core Data
3.不需要添加单元测试和UI测试,何必保留多余的内容

上述选择项目存放路径界面,重要的是代码版本管理选项,默认勾选了Xcode的git方式管理,如果想采用sourcetree之类软件来管理代码版本,不建议勾选。因为在项目根目录下生成的.git隐藏文件会导致sourcetree管理失效,解决办法是后续删除.git文件。

工程General配置

上述为创建成功的界面,不过对general配置稍作改动:
1.version,建议采用1.0.0格式;build号在每次提交到iTunes connect前才必须修改
2.team,可以忽略,或者添加开发者账号
3.deployment target按需选择,建议将PROJECT下的base的发布版本保持一致
4.main interface不打算采用main.storyboard,清空
5.这个base项目只想采用竖屏
6.如果未支持设备全方向,就必须勾选requires full screen,否则会编译错误
7.启动时候不采用LaunchScreen.storyboard,清空

如果启动时候采用各设备单张启动图,清空Launch Screen File栏,然后点击Use Asset Catalog,直接确定,没有必要在左侧文件列表中增加新的xcassets文件。

生成新的Brand Assets暂时不是需要的。
1.在上述截图的空白位置右键,选择AppIcons & LaunchImages -> New iOS Launch Images,生成新的LaunchImage文件如上图
2.右键Brand Assets,remove selected items
3.回到general配置界面,Launch Images Source选择LaunchImages
4.点击AppIcons或者LaunchImages右边箭头,或者选中左侧列表的Assets.xcassets文件,进入详细配置界面

上图右侧选中箭头图标,则是配置具体在不同版本上的icon或者启动图,image栏则显示了相关需求信息。直接将其他地方的png图片拖放到对应网格中即可,拖放后,可右键网格中图片在Finder中查看具体存放位置。只需注意一点,icon和启动图必须为png格式的图片。

Build Settings配置

基础配置已经完成,只需要注意以下配置:

1.Bitcode默认为YES,提交到iTunes connect后,苹果会拆分包资源,为不同设备生成较小体积的ipa文件;如果项目中有不支持bitcode的代码,编译会报错,需要手动设置为NO

2.Code Signing配置真机调试和发布用的证书,如果已经添加了相关证书和配置概要文件,按如下配置Xcode可自动识别

3.Other Linker Flags一般不需要设置,在添加某些第三方库以后,需要设置

4.Info.plist File该文件记录了应用的重要配置,默认配置了路径;可以修路径,指向自定义plist文件的位置

5.Search Paths需要特别注意Framework、Header、Library三项的Search Paths,添加第三方库以后会自动加入,也可手动管理。注意两点:一是删除第三方库后,如果提示找不到该库,需要手动来此删除路径;二是,编辑路径,建议使用项目相对位置“$(PROJECT_DIR)”

6.Prefix Header如果添加了预编译头文件,此处管理预编译头文件的路径,建议用相对位置“$(SRCROOT)”

以上,对创建项目和工程基本配置进行了记录,下一篇记录plist和prefix header文件。

App开发流程之创建项目和工程基本配置的更多相关文章

  1. 20个可以帮你简化iOS app开发流程的工具

    这里推荐20个可以帮你简化iOS app开发流程的工具.很多开发者都使用过这些工具,涉及原型和设计.编程.测试以及最后的营销,基本上涵盖了整个开发过程. 原型和设计 有了一个很好的创意后,你要做的不是 ...

  2. iOS开发之工具篇-20个可以帮你简化移动app开发流程的工具

    如果想进入移动app开发这个领域,你总能从别的开发者或者网上或者书上找到各种各样的方法和工具,对于新手来说,还没有摸清门路就已经陷入迷茫了.这里推荐20个可以帮你简化app开发流程的工具.很多开发者都 ...

  3. app开发流程有哪些

    app开发流程是需求方和供求方相互协调的过程,一般分为需求分析.功能设计.功能实现.项目测试.上线等几个步骤,下面我们就来一起看看ytkah团队进行app开发各个流程主要做哪些事情,让您对app开发设 ...

  4. MVC5 网站开发之二 创建项目

    昨天对项目的思路大致理了一下,今天先把解决方案建立起来.整个解决包含Ninesky.Web.Ninesky.Core,Ninesky.DataLibrary等3个项目.Ninesky.Web是web应 ...

  5. 从零开始实现ASP.NET Core MVC的插件式开发(二) - 如何创建项目模板

    标题:从零开始实现ASP.NET Core MVC的插件式开发(二) - 如何创建项目模板 作者:Lamond Lu 地址:https://www.cnblogs.com/lwqlun/p/11155 ...

  6. FPGA开发流程(创建工程,选择芯片,变量位置,文件命名,reg和wire数据类型,开发流程)

    开发流程(以二选一选择器为例) 1.设计定义:设计一个可以从两个输入端中选择其中一个并输出的逻辑电路 2.设计输入 2.1.逻辑抽象:三个输入端,一个用来选择,记sel,另两个被选择,记a,b,加上一 ...

  7. day97:MoFang:移动端APP开发准备&移动端项目搭建&APICloud前端框架

    目录 1.移动端开发相关概念 1.APP类型 2.移动端屏幕介绍 3.移动端自适配方案 4.元信息(meta) 2.APP开发准备 1.注册APPCLoud账号 2.下载APP开发编辑器 3.下载AP ...

  8. CI Weekly #2 | 如何优化开发流程,实现项目持续集成?

    原文首发于 flow.ci Blog >> 链接,转载请联系:) CI Weekly 围绕『 软件工程效率提升』 进行一系列技术内容分享,包括国内外持续集成.持续交付,持续部署.自动化测试 ...

  9. App开发流程之源代码Git管理

    base项目已经可以编译运行了,只不过没有实际功能而已.继续完善base项目前,我们需要考虑一下代码管理的事情了. 不管是一个人开发还是一个团队开发,对源代码进行版本管理是必须的,任何人对代码的的任何 ...

随机推荐

  1. 编程算法 - 求1+2+...+n(构造函数) 代码(C++)

    求1+2+...+n(构造函数) 代码(C++) 本文地址: http://blog.csdn.net/caroline_wendy 题目: 求1+2+...+n, 要求不能使用乘除法\for\whi ...

  2. zabbix api调用

    zabbix api调用 api能干什么 Zabbix API allows you to programmatically retrieve and modify the configuration ...

  3. lua学习笔记(十一)

      面向对象编程    对象的实现     在lua中table就是一种对象         1.有自己的状态         2.有自己的唯一标识self         3.有自己的生命周期   ...

  4. 在Eclipse中使用JUnit4进行单元测试(初级篇、中级篇、高级篇)

    本文转载自以下 初级篇: http://blog.csdn.net/andycpp/article/details/1327147 中级篇: http://blog.csdn.net/andycpp/ ...

  5. oracle复合索引的选择和使用

    声明:虽然题目是Oracle.但同样适合MySQL InnoDB索引          在大多数情况下.复合索引比单字段索引好     很多系统就是靠新建一些合适的复合索引.使效率大幅度提高      ...

  6. hive中遇到的问题

    ) from t_1 where country ='China' group by (name = 'qq'); 结果图 select * from t_sz_part; 按照理解来说,应该只有一个 ...

  7. appium mac 下 安装及踩坑

    Appium Appium是一个开源.跨平台的测试框架,可以用来测试原生及混合的移动端应用.Appium支持IOS.Android及FirefoxOS平台.Appium使用WebDriver的json ...

  8. ObjC消息机制

    深入浅出ObjC之消息    罗朝辉(http://blog.csdn.net/kesalin) 在入门级别的ObjC 教程中,我们常对从C++或Java 或其他面向对象语言转过来的程序员说,ObjC ...

  9. mysql海量数据条件删除

    1. 问题描述:现在存在两个表,具体表结构及记录数如下所示: mysql> desc user_mapping; +------------+------------------+------+ ...

  10. ShareSDK 微博空间分享

    本文转载至 http://blog.csdn.net/learnios/article/details/8992346 ShareSDK微博分享空间分享新浪微博腾讯微博 第一步:首先导入ShareSD ...