在 Bundler 和 RubyGems 的启发下,CocoaPods 被设计成即能处理库之间的依赖关系,又能自动下载并且配置好所需要的库。
为了避免修改第三方库之后,使用pod install的时候 更新了库,采用参数--verbose --no-repo-update
,只安装新添加的库
CocoaPods 可以方便地通过 RubyGems 安装,打开 Terminal,然后键入以下命令:
sudo gem install cocoapods
Podfile这个文件是用来用来申明项目代码相关性的,正如Bundler的Gemfile,或者npm的package.json。
创建一个 Podfile:cd进入.xcodeproj文件所在的目录,通过命令pod init
来创建一个 Podfile
pod 'X', '~> 1.1'
语义化版本: 用一组简单的规则及条件来约束版本号的配置和增长 版本格式:主版本号.次版本号.修订号
,版本号递增规则如下:
先行版本号及版本编译信息可以加到“主版本号.次版本号.修订号”的后面,作为延伸。
pod repo update --verbose
在这里插入图片描述
只更新公开的CocoaPods/Specs.git
pod repo update master
#!/bin/sh
#该命令只安装新添加的库,已更新的库忽略
pod install --verbose --no-repo-update
#该命令只更新指定的库,其它库忽略
#pod update 库名 --verbose --no-repo-update
exit 0%
告诉你当前的app使用的三方库的版本,来源,和他们生成的hash值
,用在多人协作中,来确定版本是否被更改。Podfile更像是一个版本约束,而Podfile.lock才是你真正使用的版本。
Podfile.lock
记录了需要被安装的 pod 的每个已安装的版本。如果你想知道已安装的 pod 是哪个版本,可以查看这个文件。推荐将 Podfile.lock 文件加入到版本控制中,这有助于整个团队的一致性。
pod install
安装过程中,CocoPods 会使用递归来分析所有的需求,并且建立一个代码相关性的图,最后将 Podfile 序列化为Podfile.lock。
CocoaPods 会创建一个新的包含之前安装好的静态库 Xcode 项目,然后将它们链接成一个新的 libPods target。原有的项目将会依赖这个新的静态库。一个 xcworkspace 文件会被创建,从此之后,只需要打开这个 xcworkspace 文件来进行项目管理开发。
反复使用 pod install 命令,只会让 CocoaPods 重复以上步骤,重新安装这些库。所以,当你需要升级它们时,请使用以下命令: pod update
。
执行完pod install命令后,生成的Podfile.lock文件就记录下了当时最新Pods依赖库的版本,这时团队中的其它人check下来这份包含Podfile.lock文件的工程以后,再去执行pod install命令时,获取下来的Pods依赖库的版本就和最开始用户获取到的版本一致。如果没有Podfile.lock文件,后续所有用户执行pod install命令都会获取最新版本的依赖库,这就有可能造成同一个团队使用的依赖库版本不一致。
install 不会更新区间版本,update则会更新到可升区间的最大版本。尤其在多人开发的大项目有之中,如果Podfile里面没有锁死版本,很容易造成版本被动升级。
pod update 库名 --verbose --no-repo-update 只更新指定的库,其它库忽略
pod update JPush --verbose --repo-update
https://blog.csdn.net/u011018979/article/details/124340777
集成友盟+ U-Share SDK之前,您首先需要到 【友盟+】官网注册一个新应用,获得Appkey。
pod 'UMCommon' //必须集成,由原来的UMCCommon变为了UMCommon
pod 'UMDevice' //必须集成
# U-Share SDK UI模块(分享面板,建议添加)
pod 'UMShare/UI' //由原来的UMCShare/UI变为了UMShare/UI
#集成微信(完整版14.4M)
pod 'UMShare/Social/WeChat'
#只更新指定的库,其它库忽略
pod update 库名 --verbose --no-repo-update 只更新指定的库,其它库忽略
pod update UMCommon --verbose --repo-update
cocoapods 小技能:只安装新添加的库,已更新的库忽略 (pod install --verbose --no-repo-update) https://blog.csdn.net/z929118967/article/details/103830017
集成完整版的微信、QQ和微博必须要配置Universal link。
微信对Universal Links配置有以下要求:
微信使用Universal Links拉起第三方App时,会在Universal Links末尾拼接路径和参数,因此App配置的paths必须加上通配符/*
推荐使用友盟的U-Link,2021年6月3日起,U-Link后台上线了Universal link免费生成及重定向功能,免去开发者自行配置。
+ <key>com.apple.developer.associated-domains</key>
+ <array>
+ <string>xxx.umindex.com</string>
+ </array>
https://developer.apple.com/documentation/uikit/inter-process_communication/allowing_apps_and_websites_to_link_to_your_content
检查Universal link是否能够唤起App:如不能请查看Universal link配置方法文档,检查能否在浏览器内直接访问apple-app-site-association文件。
Universal link配置并不是立即生效的,App第一次启动时,iOS系统去官网下载配置的associate文件(拉取这个时间是不可控的,最多会有两三天的延迟)。以后除非App更新或重新安装,否则不会在每次打开时请求apple-app-site-association
配置Universal link:https://developer.umeng.com/docs/191212/detail/191260#h1--universal-link6
https://developer.umeng.com/docs/191212/detail/250232
填写完这两个参数,再填写完此页面的其他必填参数,点击页面下方的保存按钮,友盟服务端就会自动生成一个Universal link链接,并且直接填充到了输入框中。
分享、登录操作时显示的应用icon、名称和对应开放平台设置有关,必须要创建应用的平台为:微信、QQ、新浪、钉钉、企业微信、支付宝、Facebook、Kakao、LinkeIn、Twitter。
https://developer.umeng.com/docs/128606/detail/193651
登录微信开放平台,填写相关应用信息,审核通过后获取到微信AppID及AppSecret,如果需要微信登录功能,需要申请微信登录权限,注意微信登录有效期为一年,需要按时在微信平台认证
从2020年6月1日起该旧版本SDK会被微信限制使用正常分享功能(分享时会显示“未验证应用”)。因此U-Share已下线微信iOS精简版,且后续不再提供。
建议已使用微信iOS精简版的客户,后续使用微信iOS完整版,可以体验更多高级功能。
花几分钟创建一个.podspec文件可以节省下其他开发者无数的时间。https://blog.csdn.net/z929118967/article/details/103830544
.podspec
文件作为 CocoaPods 的一个独立单元,包含了名称,版本,许可证,和源码文件等所有信息。
pod trunk register kunnan@iosre.cn "iosre "
注册自己的电脑,使用 Trunk 服务发布 CocoaPod:$ pod trunk push NAME.podspec
。
问题:CDN: trunk URL couldn't be downloaded: https://raw.githubusercontent.com/CocoaPods/Specs/master/Spec
错误信息:
CDN: trunk URL couldn't be downloaded: https://raw.githubusercontent.com/CocoaPods/Specs/master/Specs/b/b/f/PGDatePicker/2.2.0/PGDatePicker.podspec.json Response: Couldn't connect to server
解决方案:在pod 文件添加
source 'https://github.com/CocoaPods/Specs.git'
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有