Cocoapods,让iOS开发更简单(三):实践经验汇总

如题所述

第1个回答  2022-06-08
相信各位读了之前的两篇文章,对pods的使用已经相当熟练了。不过在纷繁复杂的实际使用场景下,可能还是会遇到一些问题。本文就结合自己的实践经验,做一些快问快答,希望大家能多多补充交流。话不多说,那我们就即刻开始吧!

pod系列文章
Cocoapods,让iOS开发更简单(一):走近Cocoapods
Cocoapods,让iOS开发更简单(二):创建私有库
Cocoapods,让iOS开发更简单(三):实践经验汇总
一文带你快速分清静态库-动态库-Framework

一般推荐使用指定版本或范围版本号,以确保依赖的稳定性。

总结 :能用pod install解决问题的,就不要用pod update。因为pod update会把依赖库全部检查一遍,不仅慢有时候还会出现坑。

忽略Pods警告,有些第三方Pod集成进来会有一大堆警告信息,在Podfile中对应的target或分组下加上关键字inhibit_all_warnings!就可以把警告忽略。

作用:
在pods中用frameworks替代.a静态库。

场景:
swift项目pods默认开启(use_frameworks!),OC项目pods默认关闭(#use_frameworks!),同时需满足以下两点,

解析:

swift工程依赖了OC工程的话,需要use_modular_headers!

示例:
为某个 Pods 使用模块化标头,可以使用以下语法:
pod 'TestPodLib', :modular_headers => true
另外,当全局使用 use_modular_headers! 属性时,同时还可以使用以下方法从模块化标头中排除特定的Pod:
pod 'TestPodLib', :modular_headers => false

版本格式:主版本号.次版本号.修订号,版本号递增规则如下:

常用的方式调用pod中的素材是不生效的,因为默认是从mainBundle中读取的,如

打在pod中的素材已经不在mainBundle中而在对应组件下的bundle 里面,所以应该这么调用:

在用CocoaPods集成第三方库之后,默认情况下,使用类似#import <XXX/YYY.h>的方式引入第三方库的头文件。

pod search只会搜索本地缓存的库,如果想搜索到最新的第三方框架或者某个框架的最新版本,必须先使用pod repo update。
相似回答
大家正在搜