首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

iOS开发 创建podspec文件,为自己的项目添加pod支持

"Core" s.subspec "Core" do |ss| ss.source_files = "ZJRefreshControl/Lib/ZJRefreshControl/*.swift...RxSwift", "~> 4.0" end 验证podspec文件 编辑完podspec文件后需要验证一下这个文件是否可用 podspec文件不允许有任何的警告或Error 执行命令 pod lib lint...则说明验证通过, 否则, 根据提示修改podspec文件再次验证直到验证通过 如果出现Error但是提示信息不足,可以添加--verbose 以获取更多错误信息 pod lib lint --verbose...3.打tag 上传podspec podspec文件中需要指定的tag, 完成上述操作后给项目打tag git tag -m"first release ZJRefreshControl" "1.1"...git push --tags 最后使用pod trunk命令,把podspec文件推送到CocoaPod官方库 pod trunk 需要注册 查看个人注册信息 pod trunk me 如果没有个人信息

3.9K20

iOS模块化(2)——CocoaPods的运用

image.png AFNetworking的github上有一个AFNetworking.podspec的文件, 我们在使用CocoaPod管理使用第三方代码的时候cocoapod是如何保证我们只通过一个...验证未通过会提示有几个Error或者几个Warnings都是不行的,但是我们可以设置 --allow-warnings来忽略警告,通过--verbose查看错误具体信息 pod spec lint test.podspec...当我们通过 pod spec lint验证后,我们就可以发布我们cocoapod了到cocoapod的spec仓库了,实际是一个Git仓库,它的远程地址在在GitHub上:https://github.com...编译静态库[cocoapods-packager] 可以通过安装cocoapod的编译插件配合我们的cocoapod 文件来编译我们静态库文件 安装cocoapods-packager sudo gem...cocoapod同学都遇到过那个速度真是泪崩,创建自有仓库的优势就可以把我们cocoapod代码迁移到国内服务器,当然这一切跟github没有半毛钱关系,但在中国大家都懂的原因,甚至发生过无法访问的情况

1.2K20
您找到你想要的搜索结果了吗?
是的
没有找到

如何将你写的框架添加cocoapod支持

,先进行本地检查,使用,如何可以就是绿色,不然会报错 //pod spec lint [podspec 的路径]pod spec lint ....上传到cocoapod成功 7.到这里如果成功就搜索的到,那么就是说可以成功使用了 pod search XWSwiftRefreshT 成功搜索到框架 ?...设置好podspec后,我们要验证一下,podspec 时候通过验证 $pod lib lint 如果一切正常,这条命令执行完后会出现下面的输出: -> 你的库名 (1.0.0) 你的库名 passed...你的代码就已经上传到cocoapod上了. 推荐拓展阅读 正规的仓库都应该有一个license文件,Pods依赖库对这个文件的要求更严,是必须要有的。...将邮箱换成QQ邮箱后OK 执行pod trunk register无法收到邮件,然后换成其他邮箱执行push,报错:[!]

2K10

Swift和Objective-C混编在有赞移动的实践

调整后,原有的子项目通过头文件暴露的方式仍旧可以访问和依赖,模块间的 Router 和 BeeHive/Bifrost 模块管理也都支持,即该过程对于需求开发团队是无痛的。...最终所有的 development pod 通过 Podfile 集成进壳工程,同时 Podfile 中增加 use _modular _headers!...类中引用 ProductName-Swift.h 头文件即可引用暴露给 Objective-C 的 Swift 的类和方法 5.7 pod spec lint 验证和发布 在 pod spec lint...验证和 pod repo push 发布命令中增加 --use--modular-headers 关键字,否则验证发布不通过 以上是在二方库混编中遇到的一些问题,以供大家参考和探讨。.../Modules.html CocoaPods 官方文档: https://guides.cocoapods.org/making/making-a-cocoapod.html

2.1K20

通过 3 个简单的步骤测试使用了系统单例的 Swift 代码

相反,让我们通过3个简单的步骤,使这段代码仍然像目前一样简单易用,但使它更容易测试。 1....在我的演讲 "编写具有强大可测试性的Swift代码 "中,我建议尽可能避免使用模拟,虽然这对你自己的代码来说是一个很好的策略,但当与系统的单例进行交互时,模拟就成了提高可预测性的一个重要工具。...3....我们现在有了可测试的代码,为了方便起见,仍然使用系统的单例——所有这些都是通过3个简单的步骤完成的。 1. 抽象成一个协议 2. 使用以单例为默认参数的协议 3....在你的测试中模拟该协议 译自 John Sundell 的 Testing Swift code that uses system singletons in 3 easy steps PS: 因为swift

45210

用 SwiftLint 保持 Swift 风格一致

在代码中添加特例,以忽略特定的规则冲突 3. 为项目定制 SwiftLint 规则 4....使用enumerated[3]方法生成了索引以及数据项,使用单个字符n作为变量名会导致编译时错误,仅使用字符作为变量名会导致编译时警告。...SwiftLint的标识符冲突无法被修复 SwiftLint 的标识符冲突无法被修复 ---- 一些规则的例外情况 在某些情况下,代码需要与某些外部API或数据源兼容。...通过配置规则,并逐渐开启更多的规则,可以在现有项目中采用 SwiftLint。 SwiftLint 的自动修复冲突的能力非常强大,通过自动修复冲突可以显著解决数百个冲突的初始情况。...Hook git pre-commit在提交之前做规则检查,如有问题,直接报错,无法提交代码。这样就不会产生新的警告和错误,慢慢的再修改之前的代码,经过1年多,整个项目基本就覆盖全了。

2.3K21

组件化开发之CocoaPods公有库制作完成!!!

5DF00CC3-9CB2-48B4-A08D-4D7D47F045B3.png 之后出现一堆配置 根据需求自己选择 ?...5D78B8D5-5E69-4EFC-96B0-5302103FFA7E.png 3、结束后会自动打开创建的工程 替换需制作的cocoapod文件、修改 .podspec 文件 ?...51A983E3-95D0-4D54-87A4-C0FC817D0E3D.png 上方demo需要运行 pods中自己添加的文件 cd到Example目录下,完成demo编写后把需要被pod的文件放入下方替换...2BE1B512-1945-4DA0-9850-CFE28CFE3A4B.png 下方的s.dependency 为外部依赖库,根据需求修改,打开#注释 多个就写多个 ?...别输入这个) 就是注册验证过程 pod trunk me 验证是否成功 6、回到终端 cd到项目目录执行 将自己的 spec 文件上传到 cocoapods 的 trunk 服务器 pod lib lint

93340

iOS开发笔记(十四)

正文 CocoaPod 最近某位同学在项目中添加了一个调试工具XXKitDebug,但是不想在线上开启,于是通过configurations进行区分,仅在'Debug' 和 'DailyBuild' 引入...官方文档有关于__has_include的说明,是通过检查指定的文件,是否能够正常引入来进行。...阻塞操作容易导致线程卡死,又不好做后续的维护和扩展处理,因为在等待过程中整个线程无法进行逻辑处理。...但是这种方式无法调试通过Push启动、从其他App呼起等场景,此时可以修改下面的配置,在按下command+R的时候只会进行上述的前三步,待用户手动触发App启动。 ?...:为什么CocoaPod的默认架构里面包括i386,但是主工程里面的默认架构没有包括i386?(CocoaPod版本1.7.4) 是因为两者的baseSDK不同。

1.3K20

如何解决 iOS 环境搭建与 APP 打包速度问题

维护难 Mac 系统升级后,cocoapod 容易出现问题,不得不重新搭建开发环境。...这也导致许多开发同学不敢轻易的去升级系统,无法及时体验到新系统的特性。 Pod 依赖下载量大 由于 cocoapod 本身的工作原理,pod 更新下载工程依赖时,会下载各个版本的文件信息,总量特别大。...通过 docker 镜像实现 IOS 开发环境的移植。对于 cocoapod, taobaoenv 等 ruby 类工具,鉴于 ruby 的跨平台特性,可以很方便的迁移到 docker 内。...Xcbuild 跟 Xcodebuild 的兼容性无法评估 b. xcode 升级后,xcbuild 跟进升级兼容的一段时间内,只能回退到原来的开发方案,来回切换开发环境,体验差。...而且通过这个方案,我们的 IOS 开发环境可以方便的在各个同学的开发环境中迁移,而且也可以统一进行升级改造。

2.4K31

基于CocoaPods的组件化原理及私有库实践

而且,静态库的特点导致了App每次启动时都要重新加载静态库的内存,无法控制加载时机,而且每次启动都需要重新加载静态库,导致二次加载时间无法被优化。...在运行过pod install后,再次打开原有工程会发现无法编译通过,因为已经做了改动。 首先,添加了对Pod工程的依赖,具体为引用中多了libPods_xxx.a文件。...[ Swift / ObjC ] 3.Would you like to include a demo application with your library?...[ Swift / ObjC ] 使用何种语言,可以根据项目是OC还是Swift自行选择 Would you like to include a demo application with your...同时,为了确保公共的cocoaPod可以被正常下载,请添加外部CocoaPod的库: # For inner pods source 'git@git.xxx.com:XXX_SPA_XXX/iOS_CocoaPods_Repo.git

4.8K12
领券