
Estou trabalhando em um jogo pequeno e gostaria de saber como posso escrever/ler um arquivo de configurações do usuário no Ubuntu Touch?
Responder1
Você tem algumas opções, você pode usar umArmazenamento localpara criar um banco de dados sqlite local para manter suas configurações. Ou você pode usar o (ainda em estágio alfa)U1DBcomponente, que ainda usará um banco de dados sqlite local, mas também permite sincronizar seu banco de dados de configurações entre as diferentes máquinas/dispositivos do usuário.
Responder2
Exemplo de armazenamento local
storage.js
function getDatabase() {
return LocalStorage.openDatabaseSync("appname", "0.1", "SettingsDatabase", 100);
}
function set(setting, value) {
var db = getDatabase();
var res = "";
db.transaction(function(tx) {
tx.executeSql('CREATE TABLE IF NOT EXISTS settings(setting TEXT UNIQUE, value TEXT)');
var rs = tx.executeSql('INSERT OR REPLACE INTO settings VALUES (?,?);', [setting,value]);
if (rs.rowsAffected > 0) {
res = "OK";
} else {
res = "Error";
}
}
);
return res;
}
function get(setting, default_value) {
var db = getDatabase();
var res="";
try {
db.transaction(function(tx) {
var rs = tx.executeSql('SELECT value FROM settings WHERE setting=?;', [setting]);
if (rs.rows.length > 0) {
res = rs.rows.item(0).value;
} else {
res = default_value;
}
})
} catch (err) {
//console.log("Database " + err);
res = default_value;
};
return res
}
Importações QML
import QtQuick.LocalStorage 2.0
import "storage.js" as Settings
Uso de QML
Settings.get("setting_name",8)
Settings.set("setting_name", itemid.property)
eu useieste exemplomas tive que modificá-lo.