Xcode 11:未更新到应用程序或断点的代码更改不起作用
Posted
技术标签:
【中文标题】Xcode 11:未更新到应用程序或断点的代码更改不起作用【英文标题】:Xcode 11: Changes in code not updated to app or breakpoint doesn't work 【发布时间】: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 问题 【参考方案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文件夹,运行应用
【讨论】:
该解决方案不会坚持下去,因为后续运行仍会被缓存。每次从设备上卸载应用程序更容易,但所有测试数据都会丢失。以上是关于Xcode 11:未更新到应用程序或断点的代码更改不起作用的主要内容,如果未能解决你的问题,请参考以下文章