Location of the SQLite File If Using PhoneGap Storage API

  • Posted on: 24 March 2013
  • By: oon
SQLite File on PhoneGap Storage

PhoneGap selain memiliki fitur untuk menyimpan pada Local Storage seperti yang pernah dibahas pada artikel [1], juga memiliki fitur untuk menyimpan data dalam format database SQLite.

Percobaan kali ini adalah mencoba kode seperti yang ada pada http://docs.phonegap.com pada bagian Storage.

onDeviceReady: function() { 
  app.receivedEvent('deviceready'); 
  var db = window.openDatabase("Database", "1.0", "Cordova Demo", 200000); 
  db.transaction(app.populateDB, 
    function(tx, err) { 
        alert("Error processing SQL: "+err); 
    },
    function() { 
        alert("success!"); 
    }
  );
}, 

// Populate the database 
// populateDB: 
function(tx) { 
    tx.executeSql('DROP TABLE IF EXISTS DEMO');
    tx.executeSql('CREATE TABLE IF NOT EXISTS DEMO (id unique, data)'); 
    tx.executeSql('INSERT INTO DEMO (id, data) VALUES (1, "First row")'); 
    tx.executeSql('INSERT INTO DEMO (id, data) VALUES (2, "Second row")'); 
}, 

Hasilnya menampilkan beberapa kali Alert bahwa penyimpanan pada database berhasil.

Kemudian kita bertanya-tanya, hasil database yang dibuat pada pemanggilan API Storage di PhoneGap ini tersimpan dimana?

Jawabannya seperti pada gambar di artikel ini, jika kita membuka perspective DDMS pada Eclipse, kemudian membuka Window File Explorer, maka file SQLite ada di

/data/data/[package_name]/app_database/Database.db

Kita bisa mengambil file tersebut dengan menggunakan fitur di perspective DDMS, kemudian mengecek menggunakan SQLite editor apakah table yang dibuat beserta isi yang dimasukkan pada pemanggilan kode diatas benar pada file tersebut.

NOTE: Jika Anda menggunakan real device (bukan Emulator) pada saat mencoba mengakses File Explorer pada perspective DDMS, ada kemungkinan Anda tidak dapat membuka direktori /data. Khusus untuk pengguna Android yang device-nya sudah rooted maka bisa menggunakan cara seperti pada referensi [2]

  1. Buka Terminal atau command prompt pada komputer atau bisa juga menggunakan terminal emulator pada device Android
  2. ketik: adb shell
  3. ketik: su
  4. Tekan 'Allow' pada prompt yang muncul di device
  5. ketik: chmod 777 /data /data/data /data/data/nama_package_aplikasi /data/data/nama_package_aplikasi/*
  6. Buka kembali perspective DDMS pada Eclipse

[1]http://oo.or.id/content/persistent-data-phonegap-using-localstorage
[2]http://stackoverflow.com/questions/4867379/android-eclipse-ddms-cant-acc...

Add new comment

Filtered HTML

  • Web page addresses and e-mail addresses turn into links automatically.
  • Allowed HTML tags: <a> <em> <strong> <cite> <blockquote> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Lines and paragraphs break automatically.

Plain text

  • No HTML tags allowed.
  • Web page addresses and e-mail addresses turn into links automatically.
  • Lines and paragraphs break automatically.
By submitting this form, you accept the Mollom privacy policy.