VFR-Reader在iOS8中崩溃

时间:2014-08-18 21:15:10

标签: ios objective-c crash ios8 vfr-reader

我测试了一个目前在iOS8上使用VFR-Reader-Core的应用程序,当我尝试从中打开PDF时,我遇到了完全崩溃。我是唯一有这个问题的人吗?我知道在哪里可以搜索到这个吗? Here is the crash report

谢谢

3 个答案:

答案 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