iOS 在同一个workspace下跨项目文件的相互引用
技术:workspace+ cocoapods
概述
一. 在同一个workspace下创建多个项目
二. 工程中引入pod管理
三. 跨项目文件的相互引用
详细
一、在同一个workspace下创建多个项目
1.新建一个workspace工作空间:
将创建的工作空间命名为“xxxx”, 然后将xxxx.xcworkspace保存到项目根目录文件夹(我这里新建项目的根目录为LGWorkspace)
2.创建多个工程project:
创建一个Demo1项目:
将工程Demo1 添加到上一步创建的workspace中:
同理将工程Demo1 添加到上一步创建的workspace中,
注意:所有的多个项目与workspace要放在同一目录下。
二、工程中引入pod管理
终端命令
// 进入项目目录 $cd + 项目根目录 // 创建 Podfile文件 $touch Podfile // Podfile文件写完后,接着install $pod install
Podfile文件注意点如下:
# 写在最上面,表示公用 platform :ios, '10.0' # 用cocoapods导入OC框架到Swift项目必须写该项 # use_frameworks! ## workspace文件名 workspace 'LGWorkspace.xcworkspace' ## 主工程路径 project 'Demo1/Demo1.xcodeproj’ ## 工程路径 target 'Demo1' do project 'Demo1/Demo1.xcodeproj’ pod 'SVProgressHUD' end ## 工程路径 target 'Demo2' do project 'Demo2/Demo2.xcodeproj’ pod 'MJRefresh' end
项目框架截图如下:
三、demo1和demo2文件的互相引用
如果要在项目Demo1中引用Demo2中的文件,则必须要修改路径。在Demo1的Build Settings 里找到Header Search Paths,添加一项$(SRCROOT)/../Demo2(也可以直接将文件夹Demo2拖到里面自动生成路径),并且设置为recursive。$(SRCROOT)是当前的工程路径,.. 是返回上一层,然后到TestApp_2文件夹。使用了相对路径,为了是项目移动不会影响这个配置,只要主工程和其他工程的相对位置不变,这里的相对位置是固定在同一个文件夹。
引入工程中的文件时,必须同时引入 .h 和 .m 文件。测试结果:
当Demo1里其他地方也同时调用了Demo2里的方法,则只需要引入.h文件,否则编译失败。
在Demo2里再写一个方法,放在刚才的testFunc方法里调用:
本实例支付的费用只是购买源码的费用,如有疑问欢迎在文末留言交流,如需作者在线代码指导、定制等,在作者开启付费服务后,可以点击“购买服务”进行实时联系,请知悉,谢谢
手机上随时阅读、收藏该文章 ?请扫下方二维码