首页 > 解决方案 > 如何在运行时以编程方式设置应用程序的 UserDefaults plist,以便在运行时使用它?

问题描述

如何在运行时以编程方式设置应用程序的 UserDefaults plist,以便在运行时使用它?

目前main.swift,在调用之前UIApplication.init(...),我从应用程序的容器中删除了整个库文件夹,并将其替换为我使用 Xcode 设备和模拟器视图从设备缓存的库,以保存 .xcappdata 容器。

但是,如果 UserDefaults plist 在上一次运行中不同,那么在更改它的运行中,旧值仍然会被使用。只有在之后的下一次运行(使用新 plist 的第二次运行)时,新值才会开始使用。

所以问题是,如何设置 UserSettings plist 以在应用程序的容器中使用给定的测试运行,以便这些默认值在更改后第一次运行测试时处于活动状态?

过去,您曾经能够设置“应用程序数据”以用于给定的测试目标,现在您仍然可以,但是自 Xcode 6 以来出现了一个错误,该功能不再适用于 iOS 模拟器,并且苹果一直不修复它。

标签: xcodexctestxcode12

解决方案


推荐阅读