gpt4 book ai didi

ios - CocoaPods 如何存储不同版本的 pod zip 链接?

转载 作者:行者123 更新时间:2023-11-28 23:46:18 26 4
gpt4 key购买 nike

我有一个私有(private)的CocoaPods框架,因为它是一个iOS框架,我必须将它压缩并放入s3才能下载。

最后看起来像这样:

Pod::Spec.new do |s|
s.name = "XXX"
s.version = "1.0.1"
s.homepage = "https://bitbucket.org/XXX"
s.summary = "XXX"
s.description = "XXX"
s.license = "Commercial"
s.author = "XXX"
s.source = { :http => "https://s3-ap-southeast-2.amazonaws.com/XXX.zip" }
s.platform = :ios, "9.0"
s.swift_version= "4.1"
s.ios.vendored_frameworks = "XXX.framework"
end

每次我更新我的框架时,我都会压缩一个新的 .framework 文件,然后用完全相同的 url 替换可下载的 zip 文件:https://s3-ap-southeast-2 .amazonaws.com/XXX.zip.

上传后,我执行 pod push YYY xxx.podspec 将 podspec 推送到我的另一个中央 pod 规范存储库。

我想知道的是,如果使用此框架的开发人员将其从 1.0.0 更新为 1.0.1。 CocoaPods 将从完全相同的链接下载最新的 framework。如果开发人员想要回滚到 1.0.0 怎么办? CocoaPod 在哪里/如何存储旧(所有)版本的 zip?

最佳答案

您需要在您的服务器上托管您的框架的不同版本,因此提供不同的 podspecs:

旧版本

s.version      = "1.0.0"
s.source = { :http => "https://s3-ap-southeast-2.amazonaws.com/XXX-1-0-0.zip" }

当前版本:

s.version      = "1.0.1"
s.source = { :http => "https://s3-ap-southeast-2.amazonaws.com/XXX-1-0-1.zip" }

还有一个

s.version      = "1.5.1"
s.source = { :http => "https://s3-ap-southeast-2.amazonaws.com/XXX-1-5-1.zip" }

这样,当您将 podspec 与 pod install/pod update 一起使用时,开发人员将获取正确的源。

我给了他们一个可能的命名。此外,您可以对尚未公开的“预版本”使用不同的名称,以避免用户通过猜测地址提前“下载它们”。

关于ios - CocoaPods 如何存储不同版本的 pod zip 链接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52618062/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com