【问题标题】:App builds on physical device, but not emulator (No such module)应用程序构建在物理设备上,但不是模拟器(没有这样的模块)
【发布时间】:2021-03-03 07:53:45
【问题描述】:

我的项目将建立在物理设备上,而不是在模拟器上。在模拟器上构建说没有这样的模块。我已经安装了所有必要的 pod,但是在尝试在模拟器上构建时无法访问它们。 Intellisense 不会接收到它。

虽然,我肯定已经多次安装和更新了 pod,甚至尝试使用过时的版本但没有运气

我尝试过删除和取消集成 pod,删除 DerivedData,删除 .xcworkspace 文件,清理构建文件夹。我似乎无法在模拟器上构建它,因为没有“没有这样的模块”。

iOS 部署目标是 13.2,而模拟器运行的是最新版本 (14.2)

更新:这似乎发生在我安装的任何 pod...Stripe、GoogleMaps 等。

通过拖放所需文件夹将 Firebase 框架直接下载并导入项目似乎可以消除 Firebase 错误,但其他模块仍然不起作用:Stripe、GoogleMaps 等。

【问题讨论】:

  • 这很奇怪。您可以编辑您的问题并提及您尝试过的 Xcode 和模拟器版本吗?你试过不同的模拟器吗?例如,如果您的模拟器是 iOS13,那么我会尝试 iOS14 和 iOS12,并尝试使用不同模拟器的 iOS13。此外,我可能会尝试创建一个虚拟项目并导入 FirebaseAuth 以查看是否可以在较小的设置中重现它。
  • 我已经编辑了我的问题。我不相信它与 Firebase 的依赖项有关。我发现任何 3rd 方 pod 都可能发生这种情况。我尝试创建一个新项目并添加不同的 pod,但无论我安装哪个 pod/s,我仍然得到相同的结果。
  • 虽然您说它是在物理设备上构建的,但您是否有任何从 pod 中使用的代码?这以前有效吗?或者你刚刚获得了这个项目的访问权或其他什么?
  • 这个项目在我的电脑上已经有一段时间了。我已经有 3 个月没有打开项目或 Xcode 了,但是在从 xcode 11 更新到 12 之后,它就开始发生了。

标签: ios xcode firebase firebase-authentication cocoapods


【解决方案1】:

经过数小时的搜索,我发现构建设置中的Build Active Architecture Only 默认设置为“是”。只需将其设置为 No 即可构建。

【讨论】:

  • 这并没有为我解决问题:-/ 只有我的物理设备允许我构建。就我而言,在为模拟器 xCode 构建后告诉我:“找不到模块‘FirebaseFirestore’。你有什么想法吗?
  • 您是否安装了相应的 pod?
  • 是的,我愿意。这真的很令人困惑,我很高兴它适用于我的物理设备。但如果尝试我的适用于 iPad 和不同格式的应用程序也会很不错。 :-/ 你使用的是 Cordova 还是 iOS 原生程序?
  • 不,我没有使用 Cordova。我的应用是针对每个操作系统单独编写的。
猜你喜欢
  • 1970-01-01
  • 2012-12-25
  • 1970-01-01
  • 1970-01-01
  • 2020-07-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-06-09
相关资源
最近更新 更多