【问题标题】:Environment configuration for different Debug and Release framework - Xcode不同 Debug 和 Release 框架的环境配置 - Xcode
【发布时间】:2020-02-27 08:57:29
【问题描述】:

我有两个来自支付提供商的框架,它们提供DebugRelease 框架,用于不同的环境。

我试图在网上配置/查找一种方法,我可以在一个方案中配置它们的导入,并且根据Build Configuration,它将在DebugRelease 框架之间切换.

我使用Framework Search path 例如Debug 来获得框架的调试url,同样Release 链接到发布框架的url 到文件。

我正在寻找更有用和更容易的东西,例如运行脚本,或者避免手动导入每个构建配置。

注意:框架同名,框架是用objective-c构建的,没有单头导入。

【问题讨论】:

    标签: objective-c swift xcode


    【解决方案1】:

    您可以尝试以下方法,

    • 在.xcodeproj所在的项目目录下新建文件夹“Frameworks”。

    • 将发布框架放在 /Frameworks/Release/arm64/

    • 将调试框架放在 /Frameworks/Debug/x86_64/

    在构建阶段粘贴下面的脚本 -> 运行脚本:

    cp -r "$PROJECT_DIR/Frameworks/$CONFIGURATION/$ARCHS" "$PROJECT_DIR/"
    rm -dfR <Name of the framework> && \
    cp -pRP "$ARCHS" <Name of the frameowrk> && \
    rm -rf "$ARCHS"
    

    【讨论】:

    • 我需要将它们作为嵌入式框架导入,还是只需添加此代码?
    • @nataMio 是的。您需要在嵌入式框架中添加框架。以上脚本将根据编译时选择的配置替换框架。
    • 它不是理想的解决方案。
    • 您可以在stackoverflow.com/questions/40400086/… 中尝试解决方案并使用 $CONFIGURATION 嵌入调试和发布框架
    【解决方案2】:

    不确定它是否适合您的需求,但您可以尝试

    #if DEBUG
     import debugFramework
    #else
     import releaseFramework
    #endif
    

    【讨论】:

      猜你喜欢
      • 2011-01-04
      • 1970-01-01
      • 1970-01-01
      • 2015-06-14
      • 1970-01-01
      • 2014-11-01
      • 2015-05-13
      • 2013-03-24
      • 2011-03-16
      相关资源
      最近更新 更多