iOS PDF 的路径每次都在不断变化

Posted

技术标签:

【中文标题】iOS PDF 的路径每次都在不断变化【英文标题】:iOS PDF's Path keeps on changing every time 【发布时间】:2018-10-31 09:53:13 【问题描述】:

我正在做一个项目,我应该获取一个 pdf 并将其添加到我在表格视图中的列表中并进行处理。现在再次当用户从列表中选择该pdf时,我需要再次处理它但它没有打开。当我调查这个问题时,我每次都为同一个 PDF 获得不同的路径。

func documentPicker(_ controller: UIDocumentPickerViewController, didPickDocumentAt url: URL) 
    pdfURL = url
    print("PDF URL : \(url)")
    pdfDetailFilling()

使用一个 URL 打开相同 pdf 的任何解决方法 这是我得到的 2 个不同的网址,

file:///private/var/mobile/Containers/Data/Application/278B32A4-3F13-4A20-AA11-A1B1D3501572/tmp/in.gingermind.eyed-Inbox/cprogramming_tutorial.pdf

file:///private/var/mobile/Containers/Data/Application/5F05E527-BF15-43D1-9DBC-FF89BE772898/tmp/in.gingermind.eyed-Inbox/cprogramming_tutorial.pdf

【问题讨论】:

这是一个功能。不要存储绝对路径。 @Gereon 那么我应该存储什么路径。 【参考方案1】:

不要存储绝对路径。仅存储与例如相关的部分NSTemporaryDirectory() 或您从 FileManager.default.url(for:in:appropriateFor:create:) 获得的目录之一

【讨论】:

我仍然得到相同的结果,只是 /temp/ 更改为 /document/ 就是这样,5F05E527-BF15-43D1-9DBC-FF89BE772898 AKA app-ID 每次应用程序启动时都会不断变化,所以您是否有任何想法获得一条路径并在所有会话中保持不变。 您确定这是相对路径吗?从上面的示例中,您应该只存储“in.gingermind.eyed-Inbox/cprogramming_tutorial.pdf”,因为这是与 tmp 目录相关的部分。

以上是关于iOS PDF 的路径每次都在不断变化的主要内容,如果未能解决你的问题,请参考以下文章

文件路径不断变化

如何在集合视图中查找最后一个可见单元格的索引路径。但索引路径是随机的不断变化

iOS Xcode:UIButton titleLabel 颜色不断变化

iOS 通知的变化ios9-10,新功能展示

selenium 动态元素的定位

iOS沙盒路径变化的说明详解