【问题标题】:Can I programmatically wipe the application data in applicationDidFinishLaunching:withOptions:?我可以以编程方式擦除 applicationDidFinishLaunching:withOptions: 中的应用程序数据吗?
【发布时间】:2012-05-05 09:51:35
【问题描述】:
出于测试目的,我希望能够将应用程序重置为干净状态。 (类似于从模拟器/iPhone 中删除应用程序的操作)。
假设我们有一个WIPE_DATA 定义,如果已设置,应用程序应该像刚刚安装一样启动。显然,如果您了解该应用程序,您就会知道它在 NSUserDefaults 等中存储数据的位置。我想知道是否有更通用的方法不需要深入了解特定应用程序,因此适用于任何应用程序。
【问题讨论】:
标签:
objective-c
ios
ios-simulator
【解决方案1】:
在您的应用程序中,您有两种数据 - NSUserDefaults 设置和 Documents 目录中的文件。如果您想擦除所有数据以使您的应用程序处于初始状态和设置,您应该创建例如一个应用程序委托方法,它设置初始 NSUserDefaults 设置并清理 Documents 目录中应用程序生成的文件。
据我所知,没有标准的系统方法可以做到这一点。