我目前正在编写一个iOS应用程序,其目的是将与该应用程序关联的数据对象保存在Core Data中创建的数据库中。我已经成功创建了数据库,并计划在通过iCloud登录到同一iCloud帐户的不同设备之间同步数据对象。在所有这些中间,我还希望将媒体文件与不同的数据对象相关联。但是,我不希望将构成媒体文件的二进制数据直接保存到DB。因此,我需要某种方式来保留对数据库中正确媒体文件的引用。我立即想到的是将每个媒体文件放在一个特定的文件夹中,打开该文件夹的iCloud同步,然后将媒体文件的文件名保存到数据库中。但是,我无法检索任何媒体文件的文件路径。
以下是该应用程序的代码段。运行该代码时,资产收藏夹以及带有索引的photosAsset存在,并在视图控制器中显示图像。尽管如此,所有if语句都不会输出任何输出(所有引用均为nil)。
if let a: String = self.photosAsset[self.index].bundleIdentifier {
println(a)
}
if let a = self.photosAsset[self.index].bundleURL {
println(a)
}
if let a: String = self.photosAsset[self.index].resourcePath {
println(a)
}
if let a = self.photosAsset[self.index].resourceURL {
println(a)
}
关于如何检索以这种方式显示的图像文件的文件路径有任何想法吗?一般情况下如何检索文件路径的任何解决方案都可以?
通常,对我的方法的任何想法也将不胜感激。
我认为,如果您将照片存储为xcassets,则可能无法访问它们的路径,因为有时可以压缩此类型(因此似乎Apple不允许使用此类型),例如,请参阅为Access发布的答案资产目录路径
我将创建一个自定义目录结构来存储照片,而不是将其存储在捆绑软件中,例如在/ Documents /中
这将允许您使用诸如NSFileManager之类的类来查找某些类型的所有照片等,并在需要时加载它们。
有关Apple建议您在哪里存储东西的信息,请参阅https://developer.apple.com/library/ios/documentation/FileManagement/Conceptual/FileSystemProgrammingGuide/FileSystemOverview/FileSystemOverview.html
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句