2010-11-11 17 views
6

J'ai publié une application qui stocke des données dans une base de données locale.Comment publier une mise à jour d'application sur android-market sans supprimer la base de données locale et les fichiers locaux?

Maintenant, je dois publier une mise à jour de cette application pour corriger quelques petits bugs, mais je crains que le téléchargement et l'installation de la mise à jour ne suppriment la base de données locale associée à la version précédente.

Je voudrais savoir comment fonctionne le système de mise à jour. L'installation d'une mise à jour supprimera-t-elle complètement tous les apk, fichiers, bases de données associés à la version précédente?

Si oui, comment puis-je éviter cela dans mon code?

Merci beaucoup pour votre aide !!

Répondre

5

L'installation d'une mise à jour supprime complètement tous les apk, fichiers, bases de données associés à la version précédente?

Non, ce n'est pas le cas. Si l'utilisateur désinstalle l'application, ces fichiers seront supprimés, mais une mise à jour laisse ces fichiers en place. Vos données de base de données ne seront pas supprimées avec une mise à jour, à moins que vous ne les supprimiez explicitement dans le code.

+0

vous pouvez également trouver le fil suivant utile: http://stackoverflow.com/questions/4143926/questions-about-android-application-update – Samuh

+0

si je change une structure de table en ajoutant une nouvelle colonne dans la table, en la version mise à jour. Est-ce que cette nouvelle colonne sera ajoutée à la table spécifiée sans affecter les données existantes dans la table. –

+0

@ N-JOY: Si vous le manipulez vous-même (par exemple, via 'onUpgrade()' dans votre 'SQLiteOpenHelper'), oui. Aussi, s'il vous plaît ne pas poster des commentaires comme celui-ci sur des questions sans rapport, et certainement ne pas le faire plusieurs fois sur plusieurs questions avec le même commentaire. Vous êtes parfaitement capable de cliquer sur le bouton "Poser une question" dans le coin supérieur droit de la page. – CommonsWare

0

Si vous incrémentez votre version de base de données, votre méthode onUpgrade sera appelée et ce sont les modifications qui seront apportées à cette nouvelle version.

+2

Notez que la méthode 'onUpgrade()' binnyb fait référence à votre 'SQLiteOpenHelper', si vous l'utilisez. – CommonsWare