Tag: podspec

依赖于其他Pod的分布式框架

在本教程中,我们的重点是使用依赖于其他容器的框​​架。 打开终端,并使用以下命令克隆启动程序项目。 git clone –branch 1.0.3 https://github.com/aliakhtar49/MyFramework.git 这是我们在上一部分中开发的框架。 如果您遵循 上一部分 ,则可以直接转到“入门”部分。 框架的职责是使用NSUrlSession打入网络调用,并将数据返回给使用者应用程序。 在上一部分中,我们看到了如何在本地和远程使用框架,而在这一部分中,我们将对框架添加一个依赖关系,而不是使用NSUrlSession,它将使用pod中附带的alamofire。 如果您不了解或不了解Podfile,Podspec和如何创建框架,强烈建议您看一下前面的部分。 😐 如图1所示,磁盘上的克隆存储库项目结构。 如果尚未创建框架存储库,则必须执行以下操作( 或参阅上一部分) 在github上创建MyFramework存储库 将项目克隆到一些空文件夹 将clone 1.0.3 MyFramework项目内容移动到空克隆存储库文件夹中 推送代码 您可以下载消费者应用程序(Consumer_Part2_Starter)。 该应用程序将使用我们创建的框架 入门 在本节中,我们将向我们的框架添加一个依赖项。 转到终端中MyFramework项目的根文件夹,如图2所示,然后运行以下命令。 这将创建一个podfile ,如图2所示。 Podfile定义项目所依赖的内容。 pod init 打开podfile并将其替换为图3中所示的代码。我们所做的是添加Alamofire作为对框架的依赖。 转到终端中MyFramework项目的根文件夹,如图2所示,然后运行以下命令。 这将安装Alamofire,并创建一个MyFramework.xcworkspace文件。 现在关闭项目并打开MyFramework.xcworkspace 。 pod install 如图4所示,我们在框架中添加了新功能。 现在,与以前的版本相比,它还有另一种方法。 此方法使用Alamofire从服务器获取数据,并且Alamofire包含在Pod中,该Pod是对此框架的依赖。 转到MyFramework项目的根文件夹,打开MyFramework.podspec文件,并用以下代码替换代码,如图5所示。我们做了几件事 Cocoapods使用此git url下载源代码并寻找标签1.0.6 当消费者使用cocoapods安装我们的框架时,cocoapods首先查看依赖关系,然后按照步骤1进行自动安装。消费者应用程序无需担心它 Pod规范描述了Pod库的版本。 它包括有关应从何处获取源,使用哪些文件,要应用的构建设置以及其他常规元数据(例如其名称,版本和说明)的详细信息。 将更改推送到您创建的存储库。 我推动了回购 推送标签以创建历史记录点。 这一步很重要。 由于我们将使用此标记在客户应用程序上安装pod,如图7所示 […]

CocoaPods:指向pod规范中的一个分支

我试图从一个版本库的分支安装在一个pod规范的代码,并基于文档,这应该工作: s.dependency 'repository_name', :git => 'https://github.com/account_name/repository_name.git', :branch => 'experimental_branch' 但是我得到一个像[!]不受支持的版本要求的错误。 更新CocoaPods可能会解决这个问题。 它可以直接从pod文件安装: pod 'ObjectiveRecord', :git => 'https://github.com/supermarin/ObjectiveRecord.git', :branch => '2-0-experimental' 有人知道吗? 谢谢!

为什么我的图书馆无法在CocoaPods网站上展开?

我试图通过CocoaPods网站访问我的图书馆的信息,但我无法。 所有其他库似乎都能够扩展(我的是MKWeatherUndergroundKit) 这是我的podspec Pod::Spec.new do |s| s.name = "MKWeatherUndergroundKit" s.version = "0.6" s.summary = "A simple iOS and OS X library for retrieving weather information using the Weather Underground API" s.homepage = "https://github.com/MendyK/MKWeatherUndergroundKit" s.license = { :type => "MIT", :file => "LICENSE" } s.author = { "MendyK" => "myEmail@gmail.com" } s.social_media_url = "https://twitter.com/MenndK" s.platform = […]