独特的情况是,这是一个 Ionic 应用程序,它通过 pod 引入未编译的插件源。问题是编译时,插件头文件和实现找不到.framework 的头文件/实现。演示 Cordova 应用程序找到了 .framework,但它们只在一个项目中。
我已经尝试了“找不到头文件”的所有建议。
- 将 .framework 添加到 pod 项目或应用程序项目的链接库中
- 为每个目标、每个应用程序(及其组合)添加搜索路径
- 添加链接的二进制文件
- 向构建阶段添加 header /源
- 将
s.vendored_frameworks = 'ValidicMobile.framework
添加到 podspec 并执行pod update
接下来要尝试什么?将供应商 .framework 包装在 cocoapod 中是否有助于插件找到框架,假设 pod 更擅长链接?该插件需要在 pod 中导入其他 Cordova 框架,所以不确定我是否可以将 src 直接放在主应用程序中。
最佳答案
我不确定它是否适用于您的场景,但回过头来我在 podfile
中对我的一个 pod 的 PCH 文件进行了后处理。
platform :ios, '7.0'
pod 'A','7.4.1'
pod 'B', '0.3.1-beta2'
pod 'C', '0.6.5'
post_install do | installer |
print "Updating #{installer.sandbox.target_support_files_root}/Pods-A/A.pch\n"
open("#{installer.sandbox.target_support_files_root}/Pods-A/A.pch","a") do |file|
file.puts <<EOF
//your extra stuff goes here
#import "../../../A/Hacks/someExtraHeader1.h"
#import "../../../A/Hacks/someExtraHeader2.h"
EOF
end
end
这让我可以在所有 pod 的源都已经被 check out 之后,在 pod install
期间在 pod 级别注入(inject)额外的头文件导入。
关于ios - 当工作区中有多个 xcode 项目时,如何将 cocoapods cordova 插件 src 链接到 .framework 头文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56384514/