比如 pod search MJRefresh 然而,很不巧,终端有可能会给出下面的提示,其意为在本地repo的master中找不到匹配的库文件MJRefresh: ?...3.在 Podfile中添加我们需要依赖的库名和版本号,如下 platform :ios, '8.0' # Uncomment this line if you're using Swift use_frameworks...但是如果我们在团队开发中,clone公司的项目到本地,此时我们应该直接用pod install,不建议用pod update (为了保持依赖库版本同步)。...详情如下: pod install :优先按照podfile.lock 中的依赖库信息更新pod依赖库。如果没有podfile.lock,再按照podfile中的依赖库信息更新pod依赖库。...pod update 直接按照podfile中的依赖库信息更新pod依赖库。
具体的Google账号申请和Facebook账号的申请在这里就不做介绍了,这部分内容大多也都是产品在操作,我们主要关注的还是我们的代码以及项目配置问题。...(下面是项目中的截图) Google ---- 一、Cocopads导入项目 #Google pod 'GoogleSignIn' 二、配置项目 1、导入GoogleService-Info.plist...文件 我还是建议大家直接导入这个文件的,因为你一旦使用其他谷歌服务,还是需要这个文件的,我们一旦介入谷歌登录,后面肯定还是需要其他服务的,比如Firebase数据统计等等。 ...2、配置URL Types Google这里我们配置的是前面Plist文件中的REVERSED_CLIENT_ID字段 三、我们接下来看看具体的代码 1、导入头文件.../// Google登录 #import 2、具体的登录代码如下 /// google登录 /// - Parameters
版本格式:主版本号.次版本号.修订号,版本号递增规则如下: 主版本号:当你做了不兼容的 API 修改, 次版本号:当你做了向下兼容的功能性新增, 修订号:当你做了向下兼容的问题修正。...Podfile更像是一个版本约束,而Podfile.lock才是你真正使用的版本。 Podfile.lock记录了需要被安装的 pod 的每个已安装的版本。...如果你想知道已安装的 pod 是哪个版本,可以查看这个文件。推荐将 Podfile.lock 文件加入到版本控制中,这有助于整个团队的一致性。...执行完pod install命令后,生成的Podfile.lock文件就记录下了当时最新Pods依赖库的版本,这时团队中的其它人check下来这份包含Podfile.lock文件的工程以后,再去执行pod...尤其在多人开发的大项目有之中,如果Podfile里面没有锁死版本,很容易造成版本被动升级。
在终端中进入(cd命令)你项目所在目录,然后在当前目录下,利用vim创建Podfile,运行: $ vim Podfile 然后在Podfile文件中输入以下文字: platform :...这时候,你会发现你的项目目录中,出现一个名字为Podfile的文件,而且文件内容就是你刚刚输入的内容。注意,Podfile文件应该和你的工程文件.xcodeproj在同一个目录下。 ...No `Podfile' found in the current working directory.” 2.3 自动下载第三方库 在终端shell中cd 来到你要管理的项目,运行:pod...pod install只会按照Podfile的要求来请求类库,如果类库版本号有变化,那么将获取失败。但是 pod update会更新所有的类库,获取最新版本的类库。...' 这是因为内容中混入了不可见的非法字符,最好用Vim编辑器打开Podfile文件,删除里面的非法字符,在重新安装。
原理:我们之前安装cocoapods时,有一步骤pod setup,这一步其实就是去下载cocoapods中公共的所有代码仓库索引,保存到本地 通过pod repo 指令就能查看cocoapods的索引库...:必须cd 进入到podspec目录下,才能执行这个代码 注意:podspec文件中的s.version版本号要跟最新Tag一致 注意:podspec文件中的s.source仓库地址也不能写错 测试能否索引到...怎么使用自己的私有索引仓库 pod search 搜索自己库描述 pod install,发现找不到,因为默认是去共有的索引库查找 需要在Podfile文件顶部添加一个源,表示去哪个地方查找。...--allow-warnings 工程文件在使用的时候,使用pod update 就能加载最新版本组件代码....之前获取图片都是在主bundle中:NSBundle mainBundle,但是组件资源代码,不是在主bundle中,是在自己框架的bundle中 获取自己bundle,[NSBundle bundleForClass
文本文件 vim Podfile 写入如下内容 platform :ios, "8.0" pod "AFNetworking", "~> 2.0" 注意,这段文字不是小编凭空生成的,可以在AFNetworking...退出编辑命令 :wq 这时候,你会发现你的项目目录中,出现一个名字为Podfile的文件,而且文件内容就是你刚刚输入的内容。...还是在终端中的当前项目目录下,运行以下命令: pod install 不更新升级CocoaPods的spec仓库 来缩短pod install的时间 pod install --verbose --no-repo-update...误区install or update 当我们添加新的库的时候,我们要下载库,用的命令是pod install,而不是pod update,因为在第一次pod install后,我们的项目中会生成一个...Podfile.lock的文件,他的作用是记录我们新添加库的版本信息,这样的话,如果用pod update,就会下载新版本的库,导致所有代码都要进行更改,这时Podfile.lock也会重新生成 总之
利用CocoaPods,可以定义自己的依赖关系(称作pods),并且随着时间的变化,以及在整个开发环境中对第三方库的版本管理非常方便。 优点:快速查找新的第三方库。...三、使用 1、利用cocoapods来安装第三方框架 进入要安装框架的项目的.xcodeproj同级的文件夹 在该文件中新建一个podfile文件 touch Podfile 在文件中告知cocoapods...2、在使用cocoapods管理第三方框架时,如何修改版本? 答:打开Podfile文件修改Podfile文件中的第三方框架的版本。 3、如何通过 CocoaPods 查找第三方库?...答: pod search xxx(第三方库) 4、请简单说明在安装cocoapods时,使用pod install命令安装框架后的大致过程 答: 1)分析依赖:该步骤会分析Podfile,查看不同类库之间的依赖情况...如果有多个类库依赖于同一个类库,但是依赖于不同的版本,那么cocoaPods会自动设置一个兼容的版本。 2)下载依赖:根据分析依赖的结果,下载指定版本的类库到本地项目中。
下方就是在我们已有的工程中创建了一个Podfile文件,将下方的内容输入到文件中。在该文件中通过pod来引入相关的仓库,后方跟的是仓库的版本号。下方的use_frameworks!...上面的platform指定的版本是仓库兼容的最小版本。target则指定的是作用于工程中的那个目标。pod则用来指定相关的仓库及仓库版本。...当在 podfile 中添加了相关依赖仓库,但是没有添加相关的依赖仓库的版本,那么在每次 pod insall 时都会安装该仓库最新的版本。...如果在 podfile 中指定了相关版本,那么就直接引用 podfile 中指定的版本然后在更新 podfile.lock中记录的版本即可。 ?...此刻并不会安装最新的AF版本,因为在podfile.lock中已经记录下了当前使用的AF版本了,所以再次进行 pod install 时仍然会加载 podfile.lock中记录的版本。 ?
当前CocoaPods版本 执行pod setup ,这条命令是将Github上的开源库https://github.com/CocoaPods/Specs.git托管的Podspec索引文件都下载到本地的...搜索成功会显示类库的信息 ---- 二、安装成功,使用CocoaPods 在使用CocoaPods之后,我只需要将用到的第三方开源库放到一个名为Podfile的文件中,然后执行pod install。...还会生成一个名为Podfile.lock的文件,Podfile.lock 应该加入到版本控制里面,不应该把这个文件加入到.gitignore中。...因为Podfile.lock会锁定当前各依赖库的版本,之后如果多次执行pod install 不会更改版本,要pod update才会改Podfile.lock了。...CocoaPods 的这篇 官方文档 也在What is a Podfile.lock一节中介绍了Podfile.lock的作用,并且指出: This file should always be kept
每一次执行 pod install命令,只解决还没有在 Podfile.lock 中列出的依赖:对于已在 Podfile.lock 中列出的 pod,会下载指定的版本,不会检查是否有新版本。...对于没有在 Podfile.lock 中列出的 pod,它会搜索并安装 Podfile 中指定的版本。...pod update: 直接执行 pod update命令会检查安装 Podfile 中列出的所有 pod 的最新版本。...在 Podfile 中添加新的 pod 后应该用 pod install命令,而不是 pod update命令。...中删除一个我们不要的库时 可以在 Podfile 中直接删除相关库; pod update --no-repo-update 会在删除相关库时 更新其他库版本 pod update XXX --no-repo-update
在使用gem来安装CocoaPods的时候,建议先更新gem的版本。...存在,则从此文件中读取库信息,安装其指定的版本(即使有新版本也不会安装) 若Podfile.lock不存在,搜索podfile中指定版本安装,并根据下载好的库信息生成Podfile.lock 若将库从...podfile中删除,再pod install会将库的信息从Podfile.lock中移除 Podfile.lock保证开发人员使用的是同一个版本 4、更新 4.1、更新资源配置文件 更新本地CocoaPods...中库信息安装最新版本,并将下载好信息生成或覆盖Podfile.lock 5、查看库安装版本: cat Podfile.lock pod spec cat MJRefresh 6、列出Podfile.lock...中所有库的最新版本 pod outdated 参考: CocoaPods RubyGems
使用 CocoaPods 使用时需要新建一个名为 Podfile 的文件,以如下格式,将依赖的库名字依次列在文件中即可 platform :ios pod 'JSONKit', '~> 1.4...' pod 'Reachability', '~> 3.0.0' pod 'ASIHTTPRequest' pod 'RegexKitLite' 然后你将编辑好的 Podfile 文件放到你的项目根目录中...应该加入到版本控制里面,不应该把这个文件加入到.gitignore中。...因为Podfile.lock会锁定当前各依赖库的版本,之后如果多次执行pod install 不会更改版本,要pod update才会改Podfile.lock了。...CocoaPods 的这篇 官方文档 也在What is a Podfile.lock一节中介绍了Podfile.lock的作用,并且指出: This file should always be kept
CHECKSUM: 073f3d6d9f03e6a76838ca3719df48ae6cc01450 COCOAPODS: 1.9.3 因为Podfile文件里可以不指定版本号,而版本信息又很重要...,于是就有了Podfile.lock,它里面记录完整的版本信息和依赖关系。...计算方法为: $ openssl sha1 filePath/Podfile COCOAPODS: 1.9.3 这个代表当前使用的CocoaPod版本号,远程版本管理应该要保证大家使用的pod版本号一致...它的作用是这样的,我们通常是不把Pods文件放到版本管理里面,而把Podfile.lock放到版本管理里面。...该脚本会打印很多日志,在使用CocoaPods时如果遇到资源相关的问题都可以遵循错误日志来这里推测定位错误原因。
关于pod install 运行这个命令,会下载Podfile中添加的新pod,并且打下载的pod的版本信息等写到Podfile.lock文件中。...运行这个命令,只会检查Podfile.lock文件中不存在的pod,如果Podfile.lock文件中已经存在的pod,只会下载Podfile.lock文件中保存的版本,就算这个时候这个库有一个新的版本...对于Podfile.lock文件中不存在的pod,会下载Podfile文件中声明的版本。...所以为了让一个team里所有人的库都保持在一个相同的版本,版本控制要上传Podfile.lock文件。...六、提交库到私有仓库 pod repo push REPO_NAME SPEC_NAME.podspec 七、在项目中使用私有仓库的pod 在Podfile文件中添加源 source 'https://
'IQKeyboardManager' end I 基础应用 1.1 应用场景之一:利用CocoaPods,在项目中导入类库 ---- 1、先在项目中创建Podfile,Podfile的内容是你想导入的类库...一般类库的原作者会告诉你导入该类库应该如何写Podfile; 2、运行命令:`$ pod install. 1.1.1 在安装CocoaPods之前,首先要在本地安装好Ruby环境。...---- 注意,Podfile文件应该和你的工程文件.xcodeproj在同一个目录下。...这里写图片描述 在终端中的当前项目目录下,运行以下命令: $ pod install 1.1.3 安装第三方库之后,打开项目文件的方式 ---- [!]...pod install只会按照Podfile的要求来请求类库,如果类库版本号有变化,那么将获取失败。
(下面会详细剖析这个处理过程) CocoaPods相比手动引入framework或者子工程依赖的方式,有两个便捷之处: 所有Pod库集中管理,版本更新只需Podfile配置文件; 依赖关系的自动解析;...同时CocoaPods的使用流程很简单:(假设已经安装CocoaPods) 1、在xcodeproj所在目录下,新建Podfile文件; 2、描述依赖信息,以demo为例,有AFNetworking...,会有个SDWebImage目录存放文件; 3、manifest.lock,Pods目录中的Pod库版本信息;每次pod install的时候会检查manifest.lock和Podfile.lock的版本是否一致...实际开发中,也会通过依赖打平来避免多人协作的Pod版本不一致问题。...2、Pod库的podspec文件 在每个Pod库的仓库中,都会有一个podspec文件,描述Pod库的版本、依赖等信息。 如下,是一个普通的Pod库的podspec: ?
如果是这种情况,只需忽略版本要求。 pod 'SSZipArchive' 稍后在项目您可能想要使用特定版本的pod依赖库,在这种情况下,您可以指定版本号。...如果我们不显式指定Podfile对应的target,CocoaPods会创建一个名称为default的隐式target,会和我们工程中的第一个target相对应。...的作用 在pods中用frameworks替代静态库。 另,一般开发swift项目时,我们会在podfile中添加这一句。...它记录了需要被安装的 pod 的每个已安装的版本。如果你想知道已安装的 pod 是哪个版本,可以查看这个文件。推荐将 Podfile.lock 文件加入到版本控制中,这有助于整个团队的一致性。...当团队中的某个人执行完pod install命令后,生成的Podfile.lock文件就记录下了当时最新Pods依赖库的版本,这时团队中的其它人check下来这份包含Podfile.lock文件的工程以后
最低版本是2.2.2,如果自己电脑版本低于这个版本就升级 ruby ,上面显示我的电脑版本不需要升级,可以忽略下面的升级操作 sudo gem update --system 1.2更换 ruby 镜像...CocoaPods 并且能正常使用 下面我新建一个TestDemo ,集成AFNetworking 依次输入 pod setup 、pod init 接下来就是我们正常的创建Podfile文件步骤了...会显示下面红框中的内容,下面的AFNetworking也集成成功了 简单实验 方法二 Mac OS X 10.11前 sudo gem install cocoapods Mac OS X 10.11...3、使用 CocoaPods 未使用前项目结构 文件目录 3.1、添加 Podfile 文件 终端中 cd 到当前目录 输入 touch Podfile cd 到文件目录 输入 touch Podfile...后,我们的工程目录中会出现 一个 Podfile 文件 添加 Podfile 文件 3.2、编辑 Podfile 文件 在文件中输入自己需要的第三方项目库,我们以 AFNetworking 为例 platform
,从12直接升级到最新的14版本 然后开始升级XCode 1、先卸载现有的XCode版本,避免跟新的XCode冲突 2、通过App Store安装最新版本的XCode xCode安装完成后,第一次启动,...: cocoapods cocoapods-core cocoapods-downloader xcodeproj 根据上面的答案,接下来,继续删除旧的缓存,更新pod库 weigan@weigandeMacBook-Pro.../3252800 那就尝试升级flutter版本,目前的版本是3.3的,这个问题,是在3.7的版本修复的,为了避免升级跨度太大,计划升级到3.7.12,最小可兼容的版本,这里必须吐槽下flutter,官方居然没有升级到指定版本的方法...,第二次编译居然成功了 在vsCode编译成功后,重新用xCode编译,也正常了 那接下来继续运行archive,看下是否可以满足App Store的要求 校验有报错,看信息,应该是版本号原因,升级版本号后继续...,又有新的报错 点击Manage Accounts,会自动更新账号信息,等待几分钟(这里切记要断开翻墙代理,我开着代理总是不成功) 再次运行,终于成功了 由于在适配过程中,更新了个推的SDK版本和flutter
而对于ios平台来说,CocoaPods是ios开发平台一个非常流行的第三方库管理工具。在开发过程中,根据项目复杂程度,通常我们会需要外链很多的第三方库。而添加这些第三方库的过程有时候会变成一场灾难。...注:当我们输入命令pod setup之后,界面卡住不动了,说明Cocoapods在将它的信息下载到 ~/.cocoapods里。...创建Podfile文件 在工程中创建一个Podfile文件,先定位到项目目录下,然后使用命令创建Podfile文件,命令如下: touch Podfile 然后你在你的工程目录下可以看到多了一个...,platform :ios, ‘8.0’代表当前AFNetworking支持的iOS最低版本是iOS 7.0, ‘~> 3.1.0’代表要下载的AFNetworking版本是3.1.0及以上版本。...有人问,那么怎么保存输入的内容到Podfile文件中呢?先按左上角的esc键,再按:键,再输入wq,点击回车,就保存并退出去了。 下载库到Xcode中 在终端使用命令把库下载到Xcode中。
领取专属 10元无门槛券
手把手带您无忧上云