OC项目使用Pod管理 Swift组件

时间:2021-7-9 作者:qvyue

use_frameworks!

  • Podfile中添加 use_frameworks! ,pod install 后生成libPods-XXX.a静态库。
  • Podfile中不添加 use_frameworks! ,pod install 后生成Pods_XXX.framework动态库

OC项目中Pod默认是不添加 use_frameworks!的,Swift项目中Pod默认是添加 use_frameworks!的,而项目中使用Swift库只能是framework动态库,所以在OC项目中使用Swift pod库需要在Podfile中添加use_frameworks! ,否则pod install会报错。

如果再添加 后,pod install出现如下错误:

The ‘Pods-XXX‘ target has transitive dependencies that include statically linked binaries:
(/Users/XXXX/XXXX/XXXX/XXXX.framework)

解决办法,在Podfile中添加如下代码:

pre_install do |installer|
  # workaround for https://github.com/CocoaPods/CocoaPods/issues/3289
  Pod::Installer::Xcode::TargetValidator.send(:define_method, :verify_no_static_framework_transitive_dependencies) {}
en
在项目中使用Swift库时,只需要 import 库名 ,不需要import Swift文件名。
由于Podfile中添加 use_frameworks!,最后项目中生成的是framework动态库,所以在使用其他OC Pod库时,引入库文件时不能,只需要’文件名.h’或
声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:qvyue@qq.com 进行举报,并提供相关证据,工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。