我测试了一个目前在iOS8上使用VFR-Reader-Core的应用程序,当我尝试从中打开PDF时,我遇到了完全崩溃。我是唯一有这个问题的人吗?我知道在哪里可以搜索到这个吗? Here is the crash report
谢谢
答案 0 :(得分:8)
在iOS 8中,应用容器的Te文件系统布局已更改。应用程序及其内容不再存储在一个根目录中。
来自iOS 8发行说明:
应用程序容器的文件系统布局已在磁盘上更改。宁 而不是依靠硬编码的目录结构,使用
NSSearchPathForDirectoriesInDomains
功能或URLForDirectory:inDomain:appropriateForURL:create:error:
方法NSFileManager
课程。请参阅Accessing Files and Directories中的File System Programming Guide。
我已经简要介绍了这个问题,我可以看到VFRReader没有遵循Apple的上述建议。
我打算在Github页面上引发一个问题,但问题跟踪似乎已被禁用。如果我今天得到一些额外的时间,我会考虑解决这个问题并提出拉动请求。
编辑:查看我的前叉,了解适用于iOS8的版本:https://github.com/liamnichols/Reader
我还在原始仓库上提交了拉取请求:https://github.com/vfr/Reader/pull/54
答案 1 :(得分:2)
来自vfreader的ReaderDocument.m,作者声明
"同样,//从iOS 8开始,应用程序&〜?/ Documents 目录不再存在于其捆绑包中,任何捆绑的PDF文件都必须存在 之前被复制到应用程序的//〜/ Documents目录中 他们可以被访问。"
希望它有所帮助。
答案 2 :(得分:1)
最后难以理解:
@synchronized(nil) {
CGContextDrawPDFPage(context, _PDFPageRef);
}
现在可以在iOS8中使用了。
编辑:在代码中做了一些更改,现在即使这样也无法避免这种崩溃。但现在,如果我在设备上运行,那么它可以工作。 (在模拟器上崩溃)。
内存泄漏,有时是好方法,有时是错误的方式:D