Carthage

给自己项目添加 Carthage 支持的方法

可以帮助你方便的管理第三方依赖,它会把三方依赖编译成 framework ,以 framework 的形式将三方依赖加入到项目中进行使用和管理。

首先:

  1. 安装 Carthage
    a、在GitHub下载 Carthage.pkg 进行安装
  2. Homebrew
    b、brew update ;brew install carthage

配置:

如果你的 framework target 名称与你想要打包构建的 framework 名称不一致,选中 Build Settings 选项卡,搜索 Packaging ,把 Produce Module Name 和 Produce Name 改成你想要构建的 framework 名称
如果你使用了类别,那么你需要在 Build Settings 的 Linking 的 Other Linker Flags 里加上 -all_load
如果你想你的工程支持 bitcode ,需要在 Other C Flags 里加上 -fembed-bitcode
由于 Carthage 在 build 时,会自动将设置为 Shared 的 framework target 构建成 framework ,所以需要单击顶部 target ,在弹出选项中选中 Manager Schemes  ,将 framework target 的 Shared 选项选中

进行 framework 构建

打开终端 cd 到工程目录下,执行以下命令开始打包 framework ,执行完成后会自动将 framework 文件保存在工程的 Carthage/Build 文件夹下

    carthage build --no-skip-current

然后将生成的 framework 文件拖进测试项目进行测试即可

发布并打上 tag

测试没问题后,将工程 push 并打上 tag 即可,tag 名称必须是版本号

    git tag 1.0.0
    git push --tags

这样你的项目就已经支持 Carthage 了,其他开发者就可以使用 Carthage 来管理你的项目依赖了,只需要将 framework 工程 push 上去即可,打包生成的测试 framework 文件不需要 push

使用 Cathage 依赖第三方库

创建并编辑 Cartfile

在工程目录下创建一个名为 Cartfile 的文件,可以使用以下命令创建

    touch Cartfile

更新并构建 framework

编辑完成后,在终端中 cd 到 Cartfile 所在目录下,执行以下命令构建第三方库的 framework

    carthage update --platform iOS

执行完成后会自动将第三方库 clone 到 Carthage/Checkouts 文件夹下,然后会自动打包成相应的 framework 文件,打包完的文件会保存在 Carthage/Build 文件夹下

工程配置

打开工程 target 的 General 配置,将 Carthage/Build 下生成的 framework 文件拖拽到 Linked Frameworks and Libraries

打开工程 target 的 Build Phases 配置,点击 + 选择 New Run Script Phase ,创建一个 Script ,添加以下内容

    /usr/local/bin/carthage copy-frameworks

然后添加相应的内容到下面的 Input Files

    $(SRCROOT)/Carthage/Build/iOS/xxx.framework

这个脚本是为了处理 App Store 提交的 bug,解决 App 因为使用的 frameworks 包含二进制图像的 iOS 模拟器在提交 App Store 时会被自动拒绝的问题

Cathage 的目录结构

在使用 Carthage 管理 frameworks 时,工程根目录下与 Cartfile 同级的会存在 Cartfile.resolved 文件和
Carthage 文件夹,Carthage 文件夹又包含 Build 和 Checkouts两个文件夹

  • Cartfile.resolved文件
    包含已经添加的 frameworks 信息,包括依赖名称和当前使用的版本信息

  • Checkouts 文件夹
    包含所有 frameworks 源码信息,在执行 carthage build 时,会直接使用里面的 project 或者 workspace 相应的 scheme 来构建相应的 framework

  • Build 文件夹
    包含所有的二进制构建结果,包括 .framework 二进制文件和 .dSYM 等文件

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值