0

我有一个带有(意图)扩展的应用程序。这些目标中的每一个都有多个配置文件。

对于“MyAppName”目标,我有:

Debug.xcconfig
    PRODUCT_NAME = $(inherited) Debug
    ...
Beta.xcconfig
    PRODUCT_NAME = $(inherited) β
    ...

对于意图扩展,我有:

Debug.xcconfig
    PRODUCT_NAME = $(inherited) Intent Debug
    ...
Beta.xcconfig
    PRODUCT_NAME = $(inherited) Intent β
    ...

在配置文件中,我还提供了不同的包标识符、代码签名权利等。

我能够在Debug配置中的设备上运行该应用程序,但是一旦我尝试使用Beta配置存档(用于临时分发),我就会收到错误消息:

/.../Xcode/DerivedData/MyAppName-bqreatpwtojzljfgrfobqszbpuvn/Build/Intermediates.noindex/ArchiveIntermediates/Countdown/BuildProductsPath/Beta-iphoneos/MyAppName Intent Debug.appex: No such file or directory (in target 'MyAppName' from project 'MyAppName')

由于某种原因,编译器试图定位MyAppName Intent Debug.appex而不是MyAppName Intent β.appex它应该定位。如果我查看Embed App Extensionsin Build Phasesof MyAppNametarget ,我可以看到 entry MyAppName Intent Debug.appex ...in build/Debug-iphoneos

我应该如何构建和嵌入正确的应用程序扩展?任何帮助,将不胜感激。

4

1 回答 1

0

同样的问题也发生在我身上。

我不使用 .xcconfig 文件,但类似于构建设置中的用户定义设置。

用相同的用户定义设置常量替换 Watch 和 App 目标的 Info.plist 中的 'Bundle name' 为我完成了这项工作。

于 2020-10-13T14:24:00.410 回答