App开发流程之创建项目和工程基本配置
我的开发环境为: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开发流程之创建项目和工程基本配置的更多相关文章
- 20个可以帮你简化iOS app开发流程的工具
这里推荐20个可以帮你简化iOS app开发流程的工具.很多开发者都使用过这些工具,涉及原型和设计.编程.测试以及最后的营销,基本上涵盖了整个开发过程. 原型和设计 有了一个很好的创意后,你要做的不是 ...
- iOS开发之工具篇-20个可以帮你简化移动app开发流程的工具
如果想进入移动app开发这个领域,你总能从别的开发者或者网上或者书上找到各种各样的方法和工具,对于新手来说,还没有摸清门路就已经陷入迷茫了.这里推荐20个可以帮你简化app开发流程的工具.很多开发者都 ...
- app开发流程有哪些
app开发流程是需求方和供求方相互协调的过程,一般分为需求分析.功能设计.功能实现.项目测试.上线等几个步骤,下面我们就来一起看看ytkah团队进行app开发各个流程主要做哪些事情,让您对app开发设 ...
- MVC5 网站开发之二 创建项目
昨天对项目的思路大致理了一下,今天先把解决方案建立起来.整个解决包含Ninesky.Web.Ninesky.Core,Ninesky.DataLibrary等3个项目.Ninesky.Web是web应 ...
- 从零开始实现ASP.NET Core MVC的插件式开发(二) - 如何创建项目模板
标题:从零开始实现ASP.NET Core MVC的插件式开发(二) - 如何创建项目模板 作者:Lamond Lu 地址:https://www.cnblogs.com/lwqlun/p/11155 ...
- FPGA开发流程(创建工程,选择芯片,变量位置,文件命名,reg和wire数据类型,开发流程)
开发流程(以二选一选择器为例) 1.设计定义:设计一个可以从两个输入端中选择其中一个并输出的逻辑电路 2.设计输入 2.1.逻辑抽象:三个输入端,一个用来选择,记sel,另两个被选择,记a,b,加上一 ...
- day97:MoFang:移动端APP开发准备&移动端项目搭建&APICloud前端框架
目录 1.移动端开发相关概念 1.APP类型 2.移动端屏幕介绍 3.移动端自适配方案 4.元信息(meta) 2.APP开发准备 1.注册APPCLoud账号 2.下载APP开发编辑器 3.下载AP ...
- CI Weekly #2 | 如何优化开发流程,实现项目持续集成?
原文首发于 flow.ci Blog >> 链接,转载请联系:) CI Weekly 围绕『 软件工程效率提升』 进行一系列技术内容分享,包括国内外持续集成.持续交付,持续部署.自动化测试 ...
- App开发流程之源代码Git管理
base项目已经可以编译运行了,只不过没有实际功能而已.继续完善base项目前,我们需要考虑一下代码管理的事情了. 不管是一个人开发还是一个团队开发,对源代码进行版本管理是必须的,任何人对代码的的任何 ...
随机推荐
- Linux 下安装PHPunit
PHP 档案包 (PHAR) 要获取 PHPUnit,最简单的方法是下载 PHPUnit 的 PHP 档案包 (PHAR),它将 PHPUnit 所需要的所有必要组件(以及某些可选组件)捆绑在单个文 ...
- linux pptp 服务端安装并正常上网
linux 下 PPTP VPN 1.安装相关软件32位版:yum -y install ppprpm -Uvh http://poptop.sourceforge.net/yum/stable/rh ...
- hibernate双向一对多映射
双向多对一 :Customer类------------>一的一端 Order类----------->多的一端 Customer类:(省略set().get()和构造方法) priv ...
- Java之StringBuffer和StringBuilder的差别与联系
2.StringBuilder,StringBuffer 字符串拼接时用这两个类,效率高.节约内存.假设用字符串 "+"号拼接 性能差.而且浪费空间,产生非常多垃圾 StringB ...
- DMP
1.dmp-data mabagement platform数据管理平台 数据赋能,营销智变 2.定义 把分散的第一,第三方异构.多源数据进行整合,然后纳入统一技术平台中,并对这些数据进行标准化和细分 ...
- win10 下eclipse tomcat 热部署问题?
前言: 问题的描述: 用的环境是maven,java,tomcat,win10 tomcat server配置如下 项目发布之后,修改jsp,报错,错误详情如下: 解决办法.勾选server opti ...
- 01 Memcached 安装与介绍
一:Memcached 介绍 ()官网网址:www.mamcached.org () 主要功能是:高性能,分布式的内存对象缓存系统. ()Nosql不仅仅是关系型数据库,显著特点key value ...
- 07 nginx Location之正则匹配
一:Location之正则匹配 再来看,正则也来参与. location / { root /usr/local/nginx/html; index index.html index.htm; ...
- Boost学习总结(一)VS2010环境下编译STLport和Boost
Boost学习总结(一)VS2010环境下编译STLport和Boost Boost简介 Boost库是一个功能强大.构造精巧.跨平台.开源并且完全免费的C++程序库.1998年,Beman G.Da ...
- STM32 Option Bytes位 重置为出厂设置
STM32 Option Bytes位 重置为出厂设置 JLINK 按照说明,在IAR安装目录下找到指定的运行程序JLinkSTM32.exe(D:\Program Files (x86)\IAR S ...