1

我正在尝试将 AdswizzSDK 嵌入到我的 swift 框架中。

当我给出绝对路径时,modulemap 标头起作用。

当我尝试给出相对路径时,它会抛出找不到错误头文件。

//这行得通

module AdswizzSDK {
    header "/Users/venkata.nandamuri/Desktop/MyFramework/Frameworks/AdswizzSDK.framework/Headers/AdswizzSDK.h"
    header "/Users/venkata.nandamuri/Desktop/MyFramework /Frameworks/AdswizzSDK.framework/Headers/AdswizzCompanionViewDelegate.h"
    export *
}

这不起作用

module AdswizzSDK {
    header "$(SRCROOT)/Frameworks/AdswizzSDK.framework/Headers/AdswizzSDK.h"
    header "$(SRCROOT)/Frameworks/AdswizzSDK.framework/Headers/AdswizzCompanionViewDelegate.h"
    export *
}

有没有办法将 AdswizzSDK 嵌入到我的自定义框架中?

4

1 回答 1

0

在你的目标的 Scheme 中,你可以定义 Pre-Actions;添加一个运行脚本预操作:

echo "module Heap [system] {" > ${SRCROOT}/Heap/iphoneos.modulemap
echo "    header \"${SRCROOT}/Pods/Headers/Public/Heap/Heap.h\"" >> 
${SRCROOT}/Heap/iphoneos.modulemap
echo "    export *" >> ${SRCROOT}/Heap/iphoneos.modulemap
echo "}" >> ${SRCROOT}/Heap/iphoneos.modulemap

用适当的路径替换 echo 命令和标准输出重定向中的路径。您可能还想用“模块 AdswizzSDK”替换“模块堆”。

还要确保将构建设置从您的目标之一提供给预操作,以便定义 SRCROOT 和其他构建变量。

于 2021-03-24T21:14:53.300 回答