使用CocoaPods创建私有库及更新

2020-09-19  本文已影响0人  麦子_KB

创建私有库

1.切换到想要存放地址path,使用pod命令创建(假如这里很慢,怎么做你懂得)

//成功后按照提示,配置仓库信息即可,CocoaPods会帮我们创建XCode工程
pod lib create [you Spec name]
  1. cd到Example路径下, 打开Example 中的.workspace文件 打开工程
    找到.podspec

3.修改podspec文件,私有库要更改homePage地址。修改完成后, cd 到WYLib目录下执行

pod lib lint

验证私有库是否合法,注意podspec文件格式要正确

更新私有库

  1. 更新版本号:0.1.5

2.设置tag并上传

git tag 0.1.5
git push --tags
  1. 校验合法性
pod spec lint --allow-warnings

假如我们的库有依赖私有库,那么校验时需要添加私有库仓库地址,命令变为:

pod sepc lint 文件名.podspec --sources='你仓库地址,https://github.com/CocoaPods/Specs.git'
  1. 上传到仓库
pod repo push 【你的仓库名称】  xxxxxxxxx.podspec --allow-warnings
  1. pod search 查看是否成功

附 pod 安装版本含义

pod 'AFNetworking'                 //不显式指定依赖库版本,表示每次都获取最新版本
pod 'AFNetworking', '~>0'          //高于0的版本,写这个限制和什么都不写是一个效果,都表示使用最新版本

pod 'AFNetworking', '~> 0.1.2'     //使用大于等于0.1.2但小于0.2的版本
pod 'AFNetworking', '~>0.1'        //使用大于等于0.1但小于1.0的版本

pod 'AFNetworking', '2.0'          //只使用2.0版本
pod 'AFNetworking', '= 2.0'        //只使用2.0版本

pod 'AFNetworking', '> 2.0'        //使用高于2.0的版本
pod 'AFNetworking', '>= 2.0'       //使用大于或等于2.0的版本
pod 'AFNetworking', '< 2.0'        //使用小于2.0的版本
pod 'AFNetworking', '<= 2.0'       //使用小于或等于2.0的版本

pod 'AFNetworking', :git => 'http://gitlab.xxxx.com/AFNetworking.git', :branch => 'R20161010'  //指定分支 

pod 'AFNetworking',  :path => '../AFNetworking'  //指定本地库

附在使用支付宝相关SDK报错

ld: building for iOS Simulator, but linking in object file built for iOS, file '/var/folders/1l/nm8fcxf51r3_m3ytrnyh3mjr0000gn/T/CocoaPods-Lint-20210313-86060-16jc7bl-CassAlipay/Pods/AlipaySDK-iOS/AlipaySDK.framework/AlipaySDK' for architecture arm64
    clang: error: linker command failed with exit code 1 (use -v to see invocation)

mac电脑10.15.7操作系统和xcode12.0.1版本全面抛弃对arm64的Release-iphonesimulator模拟器支持。而支付宝SDK还兼容arm64。

解决方案
在XXX.podspec配置文件中增加:s.pod_target_xcconfig = { 'VALID_ARCHS' => 'x86_64 armv7 armv7s arm64' }。

附苹果机型及指令集

i386是针对intel通用微处理器32位处理器
x86_64是针对x86架构的64位处理器
模拟器32位处理器测试需要i386架构,
模拟器64位处理器测试需要x86_64架构,
真机32位处理器需要armv7,或者armv7s架构,
真机64位处理器需要arm64架构。
上一篇下一篇

猜你喜欢

热点阅读