2

ALAssetPropertyAssetURL 属性是存储对 ALAsset 的引用的便捷方式,但在系统还原(或升级)期间,某些资产可能会更改此属性。虽然可能有一些解决方法来更新资产参考 url,但我如何检测何时需要这样做?系统升级很容易,但我如何检测应用程序何时从备份中恢复,以及这是否发生在同一设备中?

4

2 回答 2

6

当您的应用程序启动时,在文档中查找一个已知名称的文件(例如,DidLaunch.txt),如果不存在,则创建它,并将其元数据设置为“不备份”。每次启动时,查找该文件 - 如果它在那里,您之前在此设备上启动过。如果它不存在,这是一个全新的发布。

于 2013-11-14T14:09:55.057 回答
0

书签对象是我通常如何维护对用户可能转移给我的资源的访问。

来自 NSURL 类参考

从 OS X v10.6 开始,NSURL 类提供了创建和使用书签对象的工具。书签提供对文件系统资源的持久引用。解析书签时,您将获得资源当前位置的 URL。如果用户移动或重命名资源,或者如果用户重新启动您的应用程序或重新启动系统,书签与文件系统资源(通常是文件或文件夹)的关联通常会继续工作。

我不知道它将如何处理备份的恢复(听起来你会深入挖掘操作系统的内部来理解那个),但无论如何它可能是你最好的选择。

于 2013-11-14T13:45:56.417 回答