gpt4 book ai didi

ios - "Undefined symbols for architecture arm64:"用于快速测试中的功能

转载 作者:行者123 更新时间:2023-11-28 11:22:38 25 4
gpt4 key购买 nike

我的 Swift 项目中有两个目标:

  1. 应用
  2. 测试

app target 中有一个函数在应用程序的任何地方都没有使用,但在测试中使用。结果我得到构建错误:Undefined symbols for architecture arm64:。它说该函数未定义,它是从测试中引用的。

看起来编译器从应用程序中删除了这个未使用的函数。

问题:如何将未使用的功能包含在应用构建中?

注意:我不想将应用程序的源文件添加到测试目标的 Compile Sources 中。我更喜欢将应用程序的功能标记为 public,然后在测试中导入应用程序模块。

当前(不完美)的解决方案

以下是我目前如何构建应用程序中未使用的功能。这样我就可以在测试中使用它们。

class IncludeUnusedHack {
init() {
if NSDate.date().timeIntervalSinceNow > 10_000_000 {
MyClass.unusedFunctionOne()
MyClass.unusedFunctionTwo()
}
}
}

class AppDelegate: UIResponder, UIApplicationDelegate {

let unusedHack = IncludeUnusedHack()
...
}

最佳答案

我也遇到过这样的问题,然后我通过关闭一个选项解决了。

app(in TARGETS) > Build Settings > Linking > Dead Code Stripping

关于ios - "Undefined symbols for architecture arm64:"用于快速测试中的功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26110792/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com