0

window.openDatabase()我有一个在onDeviceReady()事件处理程序中调用的 Cordova iOS 应用程序。事件处理程序的执行似乎onDeviceReady()在该行停止,因为console.log()该行下方的我从未出现在 Xcode 的调试控制台中。也没有任何其他错误消息。

相同的代码在 Android 设备和Chrome/Ripple模拟器上运行良好。怎么了?

var db = null;

// PhoneGap is ready
function onDeviceReady() {
    console.log("onDeviceReady");

    db = window.openDatabase("mydb", "1.0", "My DB", 100000000);        

    console.log("This will never be displayed in Xcode log");

    db.transaction(checkDB, checkErrorCB);        
}

科尔多瓦版本:2.3.0

Xcode 版本:4.5.2

我正在 iPhone 5.1 和 iPhone 6.0 模拟器上进行测试。

4

1 回答 1

2

啊!!

似乎我指定的数据库大小太大了,当我删除零时,一切都开始工作了......当你已经查看相同的代码数周并且它运行良好时,这种事情很容易被忽视。我只是选择了一个随机的大数字“以防万一”。

此代码有效:

db = window.openDatabase("mydb", "1.0", "My DB", 10000000);
于 2013-01-13T03:47:30.170 回答