SQLite sur Android Data Framework
Bonjour,
Bon alors, je me met doucement au dev Android parce que j'ai que ça à foutre en ce moment et que ça me botte bien. (Java :bave: )
Donc, création du projet, Greendroid qui fonctionne bien, quelques activity plus tard, tentative d'utilisation de SQLite grace au Android Data Framework qui passe par un fichier XML pour formatter ses tables.
Sauf que ça marche super pas.
XML bien placé dans res/xml/tables.xml :
Code:
1 2 3 4 5 6 7 8
| <?xml version="1.0" encoding="UTF-8"?>
<database name="devis_db" version="1">
<field name="titre" obligatory="true" type="text" size="128">
</field>
<field name="auteur" obligatory="false" type="text" size="128"></field>
<table name="livres" to-string="%titre%">
</table>
</database> |
La méthode qui est sensé ajouter de la donnée :
Code:
1 2 3 4 5 6 7 8 9 10 11
| public long addLivre(Livre l){
// On créé un objet Entity avec en paramètre le nom de la table (ici Livre)
Entity ent = new Entity("livres");
ent.setValue("titre", l.getTitre());
ent.setValue("auteur", l.getAuteur());
ent.save();
return ent.getId();
} |
Que j'utilise par un très simple mais pas du tout efficace :
Code:
1 2 3 4 5 6
| Livre livre = new Livre();
livre.setAuteur("");
livre.setTitre(titre);
SqliteProvider sql = new SqliteProvider(getApplicationContext());
sql.addLivre(livre); |
Le problème est que l'insertion fonctionne bien. Il y a bien une entrée dans la table, mais tout ce qui est renvoyé c'est null a part l'id.
Est-ce que quelqu'un a une idée parce que là je vais craquer.
---------------
Une autre question, est-ce qu'il est possible sous Android de persister les données par sérialisation d'objets en xml ? Est-ce que c'est 'propre' ?
Merci les gens !