【发布时间】:2014-10-07 09:39:35
【问题描述】:
我正在使用标准的 PhoneGap 插件通过 HTML5 写入本地文件。在后台,我的应用程序正在从服务器下载数据,然后将其保存到磁盘中。典型的文件大小约为 20Mb。
如果用户在书写时滚动屏幕或其他一些 UI 操作,我的应用程序将在运行 iOS7 的 iPad 2 上冻结一两秒。文件写入操作包含在 setTimeout 调用中(因此它不会阻塞主线程)但这似乎没有帮助。
XCode 控制台在文件写入过程中报告此情况(延迟感觉像是发生了大约 1 秒或 2 秒,而不是此处暗示的 200 毫秒):
线程警告:['File'] 花费了 '93.378906' 毫秒。插件应该使用后台线程。 线程警告:['File'] 花费了 '125.793945' 毫秒。插件应该使用后台线程。
我可以做些什么来避免延迟?如何诊断延迟发生在哪里?
【问题讨论】:
标签: javascript ios cordova fileapi