我的开发环境为: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. Matlab中使用jython扩展功能

    Matlab中面向对象能力并不强,通过使用jython引擎能够对其功能扩展. 1 编辑classpath.txt增加jython.jar 在matlab中输入 which classpath.txt ...

  2. YUV图像合成原理

    http://blog.csdn.net/zwz1984/article/details/50403150 http://zhongcong386.blog.163.com/blog/static/1 ...

  3. window mysql安装步骤

    window安装mysql(本人系统win10 64位 安装mysql-5.7.10-winx64) 1. 官网下载mysql zip安装包,然后解压到你想安装的目录,假设解压的目录是P:\mysql ...

  4. Android双缓冲技术

    参考文章: 1.http://djt.qq.com/article/view/987 2.http://blog.csdn.net/i_lovefish/article/details/7913623 ...

  5. python pytest

    之前一直用unittest ,现在学习pytest 看看那个好 1. 安装 pip install -U pytest py.test --version 2. 只需要按照下面的规则: 测试文件以te ...

  6. 【Atheros】Iperf性能测试的问题小结

    1. Iperf用文件作为数据源无效的问题 2. 在代码中修改iperf数据,iperf无法收到,但在mac层能拿到数据 3. TCP发不出去包的问题 1. Iperf用文件作为数据源无效的问题 Ip ...

  7. NSIS 变量

    $PROGRAMFILES 程序文件目录(通常为 C:\Program Files 但是运行时会检测). $COMMONFILES 公用文件目录.这是应用程序共享组件的目录(通常为 C:\Progra ...

  8. The following classes could not be found: - android.support.v7.internal.widget.ActionBarOverlayLayout

    升级android-studio之后,出现这个问题,一直解决不了. 无意间,在布局文件的Design界面中,修改原来的AppTheme为Base.Theme.AppCompat就修复了此问题. 暂时不 ...

  9. 替换jar包内指定的文件

    用Java jar 工具来替换. ① jar uvf test.jar test.class 把test.class 直接添加到jar包的根目录,也就是替换到根目录文件. ②jar uvf test. ...

  10. 九度OJ 1346:会员积分排序 (排序)

    时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:967 解决:413 题目描述: 元旦佳节快到了,超市A想要给会员一些奖品.但是奖品有限,所以它需要给这些会员做一个排序,然后将名单输出来.排 ...