2010-10-14 5 views
1

Dans Android, je voudrais inclure une base de données au moment de l'installation, c'est-à-dire dans le fichier .apk. Est-il possible de faire ça? J'ai des données dans une base de données que je voudrais utiliser dans l'application. Je ne veux pas utiliser la méthode OnCreate pour créer une base de données. Alors, où dois-je conserver mon fichier db afin qu'il soit accessible à l'application après l'installation?android-Inclure une base de données au moment de l'installation

Répondre

0

Ce site m'a aidé beaucoup.

http://www.reigndesign.com/blog/using-your-own-sqlite-database-in-android-applications/

Je crée mes bases de données SQLite séparément, les ajouter au répertoire des actifs dans le package d'applications, puis sur le lancement de l'application copie les bases de données dans le /data/data/com.company.appname/ bases de données/répertoire à utiliser là.

Je vérifie également si le fichier existe déjà avant de le copier (donc je le copie en général seulement lors du premier lancement).

par exemple

boolean createDB= false; 

     File dbDir = new File(DB_PATH); 
     File dbFile = new File(DB_PATH + DB_NAME); 

     if(!dbDir.exists()) 
     { 
      dbDir.mkdir(); 
      createDB = true; 
     } 
     else if (!dbFile.exists()) 
     { 
      createDB = true; 
     } 
2

créer votre fichier de base de données, l'inclure dans votre répertoire actif et le premier lancement de votre application à copier/données/données/PACKAGE_NAME/bases de données/

Questions connexes