ios – 使QLPreviewController“缓存”无效

ios – 使QLPreviewController“缓存”无效,第1张

概述QLPreviewController似乎根据本地文件的URL缓存文件内容.在我的应用程序中,文件内容可以远程更新,并将导致下载新内容. 如果我在QLPreviewController中查看文件,远程更新它,然后重新预览它,该文件不会显示为更新. 该文件肯定在磁盘上更新,其他控件显示正确的更新文件. 我现在使用的解决方法是基本上将文件预览为一个唯一的文件名(使用时间戳),这当然不会在QLPrevi QLPrevIEwController似乎根据本地文件的URL缓存文件内容.在我的应用程序中,文件内容可以远程更新,并将导致下载新内容.

如果我在QLPrevIEwController中查看文件,远程更新它,然后重新预览它,该文件不会显示为更新.

该文件肯定在磁盘上更新,其他控件显示正确的更新文件.

我现在使用的解决方法是基本上将文件预览为一个唯一的文件名(使用时间戳),这当然不会在QLPrevIEwController的缓存中.然而,这有其他影响,例如,如果应用程序被杀或崩溃(上帝禁止),我不知道“在哪里”找到下载的文件.

我正在寻找更少侵入性的黑客攻击,或者让QLPrevIEwController刷新其缓存的解决方案. API似乎没有暴露任何东西,所以如果它不如我上面提到的那么粗糙,不要害怕提交黑客(不包括复制/移动文件到保证的唯一URL,我已经利用).

解决方法 我自己也遇到过这个问题.每次重新加载与当前查看项目同名的项目时,我都会通过重新创建QLPrevIEwController来解决它.创建新的QLPrevIEwController会清除缓存.

我知道这是一个老问题,但有人可能会遇到同样的问题,并且发现这个答案很有帮助.

总结

以上是内存溢出为你收集整理的ios – 使QLPreviewController“缓存”无效全部内容,希望文章能够帮你解决ios – 使QLPreviewController“缓存”无效所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/web/1035971.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-24
下一篇2022-05-24

发表评论

登录后才能评论

评论列表(0条)

    保存