【发布时间】:2014-08-18 21:15:09
【问题描述】:
我测试了一个当前在 iOS8 上使用 VFR-Reader-Core 的应用程序,当我尝试从中打开 PDF 时完全崩溃。我是唯一一个有这个问题的人吗?知道我可以在哪里搜索以纠正这个问题吗? Here is the crash report
谢谢
【问题讨论】:
标签: ios objective-c crash ios8 vfr-reader
我测试了一个当前在 iOS8 上使用 VFR-Reader-Core 的应用程序,当我尝试从中打开 PDF 时完全崩溃。我是唯一一个有这个问题的人吗?知道我可以在哪里搜索以纠正这个问题吗? Here is the crash report
谢谢
【问题讨论】:
标签: ios objective-c crash ios8 vfr-reader
在 iOS 8 中,应用容器的 Te 文件系统布局发生了变化。应用程序及其内容不再存储在一个根目录中。
来自 iOS 8 发行说明:
应用容器的文件系统布局在磁盘上发生了变化。相当 与依赖硬编码的目录结构相比,使用
NSSearchPathForDirectoriesInDomains函数或URLForDirectory:inDomain:appropriateForURL:create:error:方法的NSFileManager班级。请参阅File System Programming Guide 中的Accessing Files and Directories。
我已对该问题进行了简要研究,我发现 VFRReader 没有遵循 Apple 的上述建议。
我打算在 Github 页面上提出一个问题,但问题跟踪似乎已被禁用。如果我今天有额外的时间,我会考虑解决这个问题并提出拉取请求。
编辑:查看我的 fork 以获取适用于 iOS8 的版本:https://github.com/liamnichols/Reader
我还在原始仓库提交了一个拉取请求:https://github.com/vfr/Reader/pull/54
【讨论】:
来自vfreader的ReaderDocument.m,作者表示
"同样,//从 iOS 8 开始,应用程序的 ~/Documents // 目录不再存在于其捆绑包中,任何捆绑的 PDF 文件都必须 被复制到应用程序的 // ~/Documents 目录之前 可以访问它们。”
希望对你有帮助。
【讨论】:
终于搞砸了:
@synchronized(nil) {
CGContextDrawPDFPage(context, _PDFPageRef);
}
它现在可以在 iOS8 中使用。
编辑:对代码进行了一些更改,现在即使这样也不能帮助我避免这次崩溃。但是现在,如果我在设备上运行,那么它可以工作。 (在模拟器上崩溃)。
内存泄漏,有时是好的方法,有时是错误的方法:D
【讨论】: