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项目;这样就达到了依赖管理。

相关推荐
一如初夏丿1 天前
xcode15 报错 does not contain ‘libarclite‘
ios·xcode
app开发工程师V帅1 天前
Xcode 文件缺失:Missing submodule xxx
ide·macos·xcode
app开发工程师V帅1 天前
Xcode 16 编译弹窗问题、编译通过无法,编译通过打包等问题汇总
macos·xcode
请叫我飞哥@5 天前
iOS在项目中设置 Dev、Staging 和 Prod 三个不同的环境
ios·xcode·swift
B.-5 天前
减少 Flutter 应用体积的常用方法
学习·flutter·android studio·xcode
名字不要太长 像我这样就好7 天前
【iOS】OC语法知识小结
ios·cocoa·xcode
zhangfang688 天前
Go 语言切片(Slice)
开发语言·golang·xcode
davidson14718 天前
Xcode
ios·swiftui·xcode·swift·apple
tealcwu9 天前
【Unity踩坑】Unity生成iOS的XCode项目时提示错误:xcrun: error: SDK “iphoneos“ cannot be located
unity·ios·xcode
望天hous9 天前
go 怎么判断一个文件存在,并且如果存在则读取文件,并json反序列化 string切片
golang·json·xcode