IOS 01 CocoaPods 安装与使用

什么是CocoaPods

CocoaPods是一个依赖管理工具,类似Java语言的Maven,Gradle这样的工具;只是他是管理iOS,macOS等平台项目的依赖而已。

同类软件

Carthage,Swift官方提供的Swift Package Manager。

流行程度

CocoaPods>Carthage>Swift Package Manager

更改Gem源

默认的Gem源,在国内访问比较慢,可以使用RubyChina提供的镜像。

gem sources --add https://gems.ruby-china.com/ --remove https://rubygems.org/

查看Gem源

gem sources -l

确保只有 gems.ruby-china.com

安装

sudo gem install cocoapods

初始化

pod setup

查看版本

pod --version

更新

更新gem

sudo gem update --system

安装新版

sudo gem install cocoapods

初始化项目

在项目根目录输入:

pod init

输入 pod init 后,会在当前目录创建Podfile文件,在该文件里面写当前项目依赖的框架。

添加依赖

例如添加QMUI框架,后面我们会讲解使用方法。内容如下:

# Uncomment the next line to define a global platform for your project
# platform :ios, '9.0'

target 'MyCloudMusic' do
  # Comment the next line if you don't want to use dynamic frameworks
  use_frameworks!

  # Pods for MyCloudMusic

  #腾讯开源的UI框架,提供了很多功能,例如:圆角按钮,空心按钮,TextView支持placeholder
  #https://github.com/QMUI/QMUIDemo_iOS
  #https://qmuiteam.com/ios/get-started
  pod "QMUIKit"

  target 'MyCloudMusicTests' do
    inherit! :search_paths
    # Pods for testing
  end

  target 'MyCloudMusicUITests' do
    # Pods for testing
  end

end

安装依赖

pod install

执行pod install 后,会下载依赖库文件到本地,同时需要关闭再重新打开项目。

安装时更新仓库:

pod install --repo-update

重新打开项目

重新打开当前目录下的xcworkspace文件。这是一个工作空间,就是包含多个项目,其中一个项目是我们创建的项目,另一个是Pod项目,因为Pod的原理是将所有依赖保存到Pod项目,我们创建的项目在依赖Pod项目;这样就达到了依赖管理。

相关推荐
小江村儿的文杰23 分钟前
XCode Build时遇到 .entitlements could not be opened 的问题
ide·macos·ue4·xcode
青花瓷1 天前
虚拟机苹果OS当中XCode安装后如何增加对ios的支持
macos·ios·xcode
树上有只程序猿3 天前
Go Web服务中如何优雅平滑重启?
前端·golang·xcode
#摩斯先生5 天前
Swift从0开始学习 函数和闭包 day2
ios·xcode·swift
hbblzjy5 天前
xcode-select: error: tool ‘xcodebuild‘ requires Xcode, but active developer
ide·macos·xcode·xcode-select·xcodebuild
XZHOUMIN7 天前
网易博客旧文-----XCODE离线帮助文件使用的补充说明
ide·macos·xcode
HelloMagina7 天前
Xcode控制台“po“错误:表达式解析失败
ide·macos·xcode
键盘敲没电7 天前
【iOS】知乎日报前三周总结
学习·ios·objective-c·xcode
B.-8 天前
Flutter 应用在真机上调试的流程
android·flutter·ios·xcode·android-studio
iFlyCai8 天前
Xcode 16 pod init失败的解决方案
ios·xcode·swift