phoneGap数据库创建示例

时间:2012-08-22 06:09:49

标签: android cordova

我正在尝试使用phonegap的api创建数据库: 为了做到这一点,我使用了以下html:

<!DOCTYPE HTML>
<html>
<head>
<title>Cordova</title>
<script type="text/javascript" charset="utf-8" src="cordova-2.0.0.js"></script>
<script type="text/javascript" charset="utf-8">

    // Wait for Cordova to load
    //
    document.addEventListener("deviceready", onDeviceReady, false);

    // Cordova is ready
    //
    function onDeviceReady() {
        var db = window.openDatabase("test", "1.0", "Test DB", 1000000);
        alert("database created");
    }

    </script>

</head>
<body>
    <form name="input" action="html_form_action.asp" method="get">
        <input type="submit" value="Create Db" />
    </form>

</body>
</html>

丁酮不做任何事。这个想法是,当应用程序启动时,我应该确认已经创建了一个数据库。然而,这并没有发生。请帮忙......

3 个答案:

答案 0 :(得分:3)

**Hi check whether Deviceready fires or not  then try this **

function onDeviceReady(){

alert("onDeviceReady");

try {
        if (!window.openDatabase) {
            alert('Browser does not Support this');
        } else {

            var shortName = 'DbName';
            var version = '1.0';
            var displayName = 'DBName';
            var maxSize = 100000; // in bytes
            openDatabase(shortName, version, displayName, maxSize);
            alert('DB created');  
        }
    } catch(e) {
        if (e == 2) {
            // Version mismatch..
            console.log("Invalid database version.");
        } else {
            console.log("Unknown error "+ e +".");
        }
        return;
    }  

}

答案 1 :(得分:0)

我认为您的js位置路径存在问题。我运行你的代码,我没有得到任何错误。

请检查您的cordova.js的路径。我想你把那个js放在assets/www/js

的js文件夹中

enter image description here

答案 2 :(得分:0)

我不认为'alert()'在webview中按原样运行。尝试使用console.log()来输出消息(如果你使用的是eclipse),或者其他一些方法 - 也许是改变div的内容 - 来显示结果。