【问题标题】:Xcode 11: Changes in code not updated to app or breakpoint doesn't workXcode 11:未更新到应用程序或断点的代码更改不起作用
【发布时间】:2019-10-16 08:50:25
【问题描述】:

X 代码:11.1 操作系统:10.15 测试设备:iPhone 5s,iOS:12.4.2

大家好, 我犯了一个愚蠢的错误,立即升级 Xcode 和 MacOS,而不是等待以后的稳定版本。

无论如何,如果我对代码进行了更改,例如添加 NSLog() 行,则此添加不会在我的测试设备中的应用程序上更新。为了让它工作,我必须从测试设备上卸载应用程序,然后通过运行 Xcode 中的代码重新安装它。 每次我对代码进行更改时都会发生这种情况。我必须删除设备上的应用程序并重新安装。

我在互联网上寻找解决方案,但没有找到任何解决方案。 我认为这是一个 Xcode 错误,但我也很好奇你是否有同样的问题。如果希望有人能快速解决。

更新 1 在模拟器上运行正常。

【问题讨论】:

  • 我是否理解正确,在您重建应用程序后更改不应用?
  • 您是否尝试过手动删除应用程序临时构建文件夹、DerivedData 和 Xcode 缓存?
  • @Igor 还没有,因为我必须弄清楚在哪里删除它们,因为我不经常查看这些文件夹(在做证书时可能每年一次)。但我会试试的。
  • 是的,你应该尝试一下,它可以帮助我解决最多的 Xcode 问题

标签: ios objective-c swift xcode xcode11


【解决方案1】:

尝试将Build System 更改为Legacy

File > Project Settings > Build System

新的构建系统在应用缓存方面存在一些问题。

【讨论】:

  • Legacy build system 从来都不是解决方案,它只是一个过渡。迟早是行不通的,会给你留下很多未解决的问题
  • 这不起作用,因为应用仍在缓存中。
【解决方案2】:

这发生在我身上,即使更改像打印这样简单的东西也会导致断点停止工作。每次我进行更改以反映在应用程序中时,我都必须在测试设备上重新安装应用程序。在我重新启动测试手机、Xcode 并清理它为我工作的构建文件夹后。

尝试重启测试设备,然后再次运行应用。如果这不起作用:

  • 导航到 ~/library/MobileDevice/Provisioning Profiles/

  • 删除与您正在使用的应用程序对应的 .mobileprovision 文件。 (你必须点击文件才能看到它们是什么,否则它只是一个长字符串)

  • 导航到 ~/library/Developer/Xcode/DerivedData/YOUR_APP_NAME

  • 删除构建文件夹

  • 关闭Xcode,卸载应用,重启手机,打开Xcode工程,清理build文件夹,运行应用

【讨论】:

  • 该解决方案不会坚持下去,因为后续运行仍会被缓存。每次从设备上卸载应用程序更容易,但所有测试数据都会丢失。
猜你喜欢
  • 2020-02-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-05-14
  • 2019-05-07
相关资源
最近更新 更多