环境
- iOS 6.1
- 代码
- 电话差距
代码片段
document.addEventListener('deviceready', function () {
window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, function (fileSystem) {
fileSystem.root.getFile("state.json", {}, success, faliure);
});
});
用上面的代码
- 'deviceready' 被调用。
- 成功调用'requestFileSystem'回调。
- 'fileSystem.root.getFile' 从不回调(既不成功也不失败)。
问题描述
- 通过 xcode @CDVFile.m 进行跟踪可以清楚地看到,虽然 sendPluginResult 被成功调用,但 JavaScript 方法并未被执行。
- 按主页按钮将应用程序置于后台并重新激活它可以使上述流程正常工作
- 在 iPhone 模拟器上不能产生这个问题
- 扩展和折叠通知 Pane 也会导致执行 JScript 回调
什么可能导致这个问题?
上述用例可能有什么问题?
任何帮助将不胜感激
最佳答案
上面提到的是指定具有 ~invalid~ js 文件名的部分的副作用,似乎名称解析对 Safari @ iOS 区分大小写(与某些桌面浏览器相比),我确实找到了以下链接有助于查明这一点。 http://www.mobilexweb.com/blog/iphone-5-ios-6-html5-developers (具体新的 JScript 调试功能)
关于javascript - PhoneGAP、iOS、 'getFile' 回调不调用 JavaScript 回调,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18766644/