Quando desenvolvemos aplicativos para dispositivos móveis usando SQLITE precisamos criar as tabelas durante a execução do aplicativo já que não temos disponível um gerenciador de banco de dados para que a tabela seja criada previamente no dispositivo, o problema é que precisamos criar um artifício para que esse trecho de código da criação da tabela seja executado somente uma vez, ou seja, na primeira execução do aplicativo.
A solução é bastante simples, lembrando que tal solução se aplica somente a aplicativos desenvolvidos com Phonegap, basicamente devemos criar um flag, uma variável de controle, na primeira execução do aplicativo e armazenar ela de modo local, para que possa ser consultada a qualquer momento na aplicação.
function onDeviceReady() {
//Criamos e armazenamos a variável local
var firstrun = window.localStorage.getItem("runned");
if ( firstrun == null ) {
//Trecho que deve ser executado somente uma vez
//Gravamos um valor qualquer no flag para que possa ser feita a comparação
window.localStorage.setItem("runned", "1");
}else{
//Trecho que deve ser executado todas as vezes
}
}