首页 > 解决方案 > 通过 Cocoapods 中的开发 pod 功能测试静态框架

问题描述

我有一个用 Swift 编写的框架。我通过 Cocoapods 将它作为静态二进制框架分发。我也有一个使用该框架的应用程序,并将该框架开发为开发 pod

最近我不得不添加 OpenCV 作为框架的依赖项和一个 Objective-C Wrapper 类,以便能够从 Swift 代码中使用 OpenCV。由于步骤中的“静态转换依赖项”错误pod install我不得不在spec.static_framework = true我的 podspec 中添加行。错误消失了,但我还有一个错误——Swift 语法有 100 多个错误。

如果将框架编译为二进制并从另一个存储库安装为通常的 pod,而不是开发 - 一切都很好。但我需要进行更改并实时测试它们,而不是每分钟编译和上传二进制文件。

非常感谢有关如何通过开发 pod功能测试静态框架的任何建议。

标签: iosswiftobjective-copencvcocoapods

解决方案


这可能不是最好的解决方案(它也不使用开发 pod),但至少当我不得不一起调试我的框架和我的应用程序时它对我有用(这是一种类似的情况,因为应用程序通常使用框架作为cocoapod),编辑 Podfile:

use_frameworks!

workspace 'App.xcworkspace'

target 'App' do
  project 'App.xcodeproj'

  # 1 - comment out the normal dependency
  # pod 'MyFramework', '1.9'
end

# 2 - this section is added
target 'MyFramework'
  project '/Users/me/path/to/MyFramework.xcodeproj'
  pod 'DependencyOfMyFramework'
end

然后确保您在 App.xcodeproj 中没有未提交的更改。

关闭 Xcode,运行pod install,再次打开 xcworkspace,手动添加MyFrameworkDependencyOfMyFramework作为应用程序的依赖项(框架、库和嵌入式内容),可能会添加一些框架搜索路径以防出错。

为我工作,但我意识到如果你经常这样做会很不方便。


推荐阅读