iOS开发iOS开发iOS开发

iOS项目工程的完美搭建

2018-04-09  本文已影响1322人  CoderXLL

一、新建工程整体目录结构预览

我的项目一般的目录结构,见下图:


1.项目工程基本目录结构

二、 独立的逻辑模块工程的建立

如上图,可以发现,在主工程XLLIMChat下,还有一个XLLDragCollection工程。XLLDragCollection工程实际上就是主工程里的一个功能模块。这里类似于模块化的思想,将一个独立的模块单独在一个工程中展现,方便其他项目直接使用。建立模块工程步骤如下:

需要注意一点的是,模块工程要保持完全的独立,以上设置完成后,在主工程就可以使用模块工程的相关类了。

三、配置PCH文件路径

目录结构图的Macro里有一个Public目录,存放着项目全局的宏,常量,方法等。具体内容如下图:

7.全局类目录
PCH文件里实现了全局类的声明,方便项目中的其他类直接调用全局类、全局宏等。
项目主target -> Build Setting -> Prefix Header设置PCH文件路径。如下图是本工程的pch文件路径设置:
8.设置pch文件路径

四、自定义Supporting Files目录

貌似是Xcode9.0之后,系统不生成Supporting Files目录了,对于强迫症患者来说,面对系统生成的一些文件如info.plist,还是想单独放在一个目录里。所以自己手动创建一个Supporting Files目录。
这里要注意的是,如果你自己创建目录的时候,有下面两种样式:

9.创建目录的两种样式
区别如下:
  1. 如果选用New Group without Folder系统并不会真的生成一个文件夹。
  2. 如果选用New Group系统会生成一个文件夹来存储此目录下的文件。此时需要重新设置info.plist文件的路径,因为info.plist文件路径默认直接是在主工程目录下的。设置方法如下图:
    10.重新设置info.plist文件路径

五、多target管理工程

项目开发中,我们一定会需要多个版本。如开发版本,测试版本等。之前一直都是使用很low的if else进行判断。这种方式很low,也很傻。因为到项目上线的时候,为了保险起见,还需要将这些代码删掉。这很可能会造成bug。使用多个target来处理这个问题才是正确的操作。步骤如下:

  1. 双击当前target至编辑模式,更改名称。
  2. Manager Schemes下找到对应target,双击至编辑模式,更改名称。
  3. 更改新target下的info.plist路径。

六、配置本地pod,实现简单组件化

如果你的独立模块比较大,而且使用到了一些三方库。这时候建议使用使用本地Pod进行管理。步骤如下:

七、添加自动化打包脚本target

使用脚本语言,Xcode在编译的时候,就可以进行生成ipa包并上传至蒲公英了。极大地节省了项目开发时间。

#构建 .xcarchive文件
xcodebuild archive -workspace EUCSDK_Sample.xcworkspace -scheme EUCSDK_Sample -configuration Release -archivePath EUCSDK_Sample.xcarchive

#通过 .xcarchive文件导出.ipa包
xcodebuild -exportArchive -archivePath EUCSDK_Sample.xcarchive -exportPath EUCSDK_Sample.ipa -exportOptionsPlist ExportOptions.plist

#将 .ipa的包上传至蒲公英平台
curl -F "file=@EUCSDK_Sample.ipa/EUCSDK_Sample.ipa" \
-F "uKey=略(在你的蒲公英账号下获取)" \
-F "_api_key=略(在你的蒲公英账号下获取)" \
-F "updateDescription=更新内容" \
https://www.pgyer.com/apiv1/app/upload

八、总结

以上就是我总结的iOS项目基础工程的完美搭建。看完希望能够对你有所帮助。有疑问的小伙伴欢迎下方issue。没疑问的小伙伴给个爱心😀。

上一篇下一篇

猜你喜欢

热点阅读