看完之后苹果文档 https://developer.apple.com/library/ios/documentation/Cocoa/Reference/Foundation/Miscellaneous/Foundation_Functions/index.html#//apple_ref/c/func/NSSearchPathForDirectoriesInDomains,我使用 URLsForDirectory 获取应用程序中的 Library 目标,我的目标是从托管服务下载内容并将其缓存在 Library 文件夹中,以便用户无法通过 iTunes 与内容交互。
NSArray *docPaths= [[NSFileManager defaultManager] URLsForDirectory:NSLibraryDirectory inDomains:NSUserDomainMask];
NSLog(@"%@",[docPaths description]);
NSString *docPath=[(NSURL *)[docPaths objectAtIndex:0] path];
docPath = [docPath stringByAppendingPathComponent:@"audios"];
多次运行和执行代码(各种模拟器和 iOS 8.0 设备)我意识到不知何故所获取的内容似乎不再可访问,因此我记录了库目标路径,并且每次运行应用程序后目标路径似乎已改变:
/var/mobile/Containers/数据/应用程序/83725F33-C7EA-4F89-B69F-0AECF26FA77A/图书馆/”
/var/mobile/Containers/数据/应用程序/4627FC86-C3A4-4A1A-9721-AF73D808433E/图书馆/”
/var/mobile/Containers/数据/应用程序/709CCA84-936A-4596-933A-D6779758FF85/图书馆/
有人遇到过类似的问题吗?如果是这样,它是如何纠正的?我在这里错过了什么吗?
我遇到过同样的问题。我认为变量部分仅在重新编译代码时才会更改(即,如果您只是重新运行而不进行更改,则不会更改),因此不应影响实时应用程序。但我最终决定不保存路径 - 只是在保存和检索数据时使用相同的代码(如上面使用的)。尽管路径实际上在运行之间发生了变化(因此模拟器必须复制文件或重命名文件夹),但它似乎有效。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)