Android アプリを Cordova 2.5 に更新したところ、エミュレーターでは問題なく動作しますが、HTC の欲求に問題が発生し、試してみると「未定義」のデータベース エラーが発生しました。
db = window.openDatabase("ProblemDirectoryDB", "1.0", "PhoneGap Demo", 100000);
ただし、同じページをもう一度開くと、強制停止して再起動した後でも、それ以降は正常に動作します。アプリケーションのデータを削除することで、エラーを再現できます。関連するコードは以下です。どんな助け/考えも非常に感謝して受け取りました.
var db;
var dbCreated = false;
function onBodyLoad(){
$.mobile.loadingMessageTextVisible = true;
$.mobile.loadingMessage = "Loading...";
$.mobile.showPageLoadingMsg();
if (!window.device){
document.addEventListener("deviceready", onDeviceReady, false);
}
else {
onDeviceReady();
}
}
function onDeviceReady() {
db = window.openDatabase("ProblemDirectoryDB", "1.0", "PhoneGap Demo", 100000);
if (dbCreated){
db.transaction(getProblems, read_transaction_error);
}
else{
db.transaction(populateDB, create_transaction_error, populateDB_success);
}
navigator.splashscreen.hide();
}
function populateDB_success() {
dbCreated = true;
db.transaction(getProblems, transaction_error);
}
function create_transaction_error(tx, error) {
$.mobile.hidePageLoadingMsg();
alert("Create Database Error: " + error);
}