Je voudrais supprimer le fichier de base de données du Android file system
programme par programme? Puis-je lancer un script shell adb
qui exécute à son tour un script shell dans l'espace Android pour supprimer la base de données? Puis-je faire cela à partir d'un JUnit
scénario de test (avec un system()
appel)?
Comment supprimer une base de données entière sous Android? J'ai besoin de tout faire disparaître pour pouvoir tester la création de la base de données. Je peux supprimer des tables, mais ce n'est pas suffisant. C'est dans l'émulateur, pas sur un téléphone.
C'est facile de taper simplement à partir de votre shell:
la source
root@generic_x86:/data/data/com.dslomer64.servyhelperton/databases #
. À part la suppression, la copie et d'autres choses, n'y a-t-il pas une commandedir
oulist files
ouwhat the heck is in this directory/folder
?La méthode statique SQLiteDatabase.deleteDatabase (fichier fichier) a été ajoutée dans l'API 16. Si vous souhaitez écrire des applications prenant en charge des appareils plus anciens, comment procédez-vous?
J'ai essayé: file.delete ();
mais cela gâche SQLiteOpenHelper.
Merci.
ÇA NE FAIT RIEN! J'ai réalisé plus tard que vous utilisiez Context .deleteDatabase (). Le Contexte fonctionne très bien et supprime également le journal. Travaille pour moi.
De plus, j'ai trouvé que j'avais besoin d'appeler SQLiteOpenHelp.close () avant de faire la suppression, afin de pouvoir ensuite utiliser LoaderManager pour le recréer.
la source
Essayer:
ou
la source
Aussi à partir d'Eclipse, vous pouvez utiliser DDMS, ce qui le rend vraiment facile.
Assurez-vous simplement que votre émulateur est en cours d'exécution, puis passez à la perspective DDMS dans Eclipse. Vous aurez un accès complet à l'explorateur de fichiers qui vous permettra d'entrer et de supprimer facilement toute la base de données.
la source
Cela pourrait aider quelqu'un. Vous devez mentionner l'extension sinon, cela ne fonctionnera pas.
la source
context.deleteDatabase (DATABASE_NAME); supprimera la base de données uniquement si toutes les connexions sont fermées. Si vous gérez une instance singleton pour gérer votre assistant de base de données, il est facile de fermer la connexion ouverte.
Si le databasehelper est utilisé à plusieurs endroits en instanciant directement, le deleteDatabase + killProcess fera le travail même si certaines connexions sont ouvertes. Cela peut être utilisé si le scénario d'application ne rencontre aucun problème lors du redémarrage de l'application.
la source
Supprimez l'ancienne base de données lors de la désinstallation de l'application.
La configuration de android: allowBackup = "false" dans la balise d'application dans AndroidManifest.xml a résolu le problème. Il semble que pour une raison étrange, le système d'exploitation Android restaurait à partir d'une sauvegarde à chaque fois que j'ai déployé l'application.
la source
vous pouvez créer un objet fichier du chemin de base de données actuel , puis le supprimer lorsque nous supprimons le fichier du dossier
la source
J'ai utilisé la méthode de suppression de la base de données Android et la base de données supprimée avec succès
la source
J'ai utilisé ce qui suit pour "formater" la base de données sur l'appareil après avoir changé la structure de la base de données en actifs. Je décommente simplement la ligne dans MainActivity lorsque je voulais que la base de données soit à nouveau lue à partir des actifs. Cela réinitialisera les valeurs et la structure de la base de données du périphérique à mach avec la base de données occupée dans le dossier des actifs.
Ensuite, je vais implémenter un bouton qui exécutera la deleteDatabase afin que l'utilisateur puisse réinitialiser sa progression dans le jeu.
la source
Depuis Application Manager, vous pouvez supprimer toute l'application avec des données. Ou juste des données par elles-mêmes. Cela inclut la base de données.
Accédez aux paramètres. Vous pouvez accéder au menu des paramètres dans le menu de vos applications ou, sur la plupart des téléphones, en déroulant le tiroir de notification et en appuyant sur un bouton.
Sélectionnez le sous-menu Applications. Sur certains téléphones, ce menu aura un nom légèrement différent tel que Gestionnaire d'applications.
Balayez vers la droite jusqu'à la liste Toutes les applications. Ignorez les listes des applications en cours d'exécution et téléchargées. Vous voulez la liste Toutes les applications.
Sélectionnez l'application que vous souhaitez désactiver. Un écran de propriétés apparaît avec un bouton pour Forcer l'arrêt en haut à gauche et un autre pour Désactiver ou Désinstaller les mises à jour sur le côté supérieur droit.
Suprimmer les données.
la source