Ich möchte die Datenbankdatei Android file system
programmgesteuert aus dem löschen ? Kann ich ein Shell-Skript starten, adb
das wiederum ein Shell-Skript im Android-Bereich ausführt, um die Datenbank zu löschen? Kann ich dies in einem JUnit
Testfall (mit einem system()
Anruf) erledigen ?
Wie lösche ich eine gesamte Datenbank in Android? Ich muss das Ganze verschwinden lassen, damit ich die Datenbankerstellung testen kann. Ich kann Tische fallen lassen, aber das reicht nicht. Dies ist im Emulator, nicht auf einem Telefon.
Es ist einfach, einfach aus Ihrer Shell zu tippen:
quelle
root@generic_x86:/data/data/com.dslomer64.servyhelperton/databases #
. Gibt es außer Entfernen, Kopieren und anderen Dingen keinendir
oderlist files
oderwhat the heck is in this directory/folder
Befehl?Die statische Methode SQLiteDatabase.deleteDatabase (Dateidatei) wurde in API 16 hinzugefügt. Wie gehen Sie vor, wenn Sie Apps schreiben möchten, die ältere Geräte unterstützen?
Ich habe versucht: file.delete ();
aber es bringt SQLiteOpenHelper durcheinander.
Vielen Dank.
KEINE URSACHE! Ich habe später festgestellt, dass Sie Context .deleteDatabase () verwenden. Der Kontext funktioniert hervorragend und löscht auch das Tagebuch. Funktioniert bei mir.
Außerdem musste ich vor dem Löschen SQLiteOpenHelp.close () aufrufen , damit ich es dann mit LoaderManager neu erstellen konnte.
quelle
Versuchen:
oder
quelle
Auch von Eclipse aus können Sie DDMS verwenden, was es wirklich einfach macht.
Stellen Sie einfach sicher, dass Ihr Emulator ausgeführt wird, und wechseln Sie dann in Eclipse zur DDMS-Perspektive. Sie haben vollen Zugriff auf den Datei-Explorer, mit dem Sie die gesamte Datenbank problemlos löschen können.
quelle
Dies könnte jemandem helfen. Sie müssen die Erweiterung sonst erwähnen, es wird nicht funktionieren.
quelle
context.deleteDatabase (DATABASE_NAME); löscht die Datenbank nur, wenn alle Verbindungen geschlossen sind. Wenn Sie eine Singleton-Instanz für die Behandlung Ihres Datenbank-Helfers verwalten, ist es einfach, die geöffnete Verbindung zu schließen.
Wenn der Datenbank-Helfer durch direkte Instanziierung an mehreren Stellen verwendet wird, erledigt die deleteDatabase + killProcess die Aufgabe auch dann, wenn einige Verbindungen geöffnet sind. Dies kann verwendet werden, wenn das Anwendungsszenario keine Probleme beim Neustart der App aufweist.
quelle
Löschen Sie die alte Datenbank, wenn Sie die App deinstallieren.
Das Festlegen von android: allowBackup = "false" im Anwendungstag in AndroidManifest.xml hat das Problem behoben. Es scheint, dass aus irgendeinem seltsamen Grund das Android-Betriebssystem jedes Mal, wenn ich die App bereitstellte, aus einem Backup wiederhergestellt wurde.
quelle
Sie können ein Dateiobjekt mit dem aktuellen Datenbankpfad erstellen und es dann löschen, während wir die Datei aus dem Ordner löschen
quelle
Ich habe die Methode zum Löschen der Android-Datenbank verwendet und die Datenbank erfolgreich entfernt
quelle
Ich habe Folgendes zum "Formatieren" der Datenbank auf dem Gerät verwendet, nachdem ich die Struktur der Datenbank in Assets geändert habe. Ich kommentiere einfach die Zeile in MainActivity aus, wenn ich wollte, dass die Datenbank erneut aus den Assets gelesen wird. Dadurch werden die Gerätedatenbankwerte und die Struktur zurückgesetzt, um sie mit der besetzten Datenbank im Assets-Ordner zu bearbeiten.
Als nächstes werde ich eine Schaltfläche implementieren, mit der die deleteDatabase ausgeführt wird, damit der Benutzer den Fortschritt im Spiel zurücksetzen kann.
quelle
Im Anwendungsmanager können Sie die gesamte Anwendung mit Daten löschen. Oder einfach nur Daten von selbst. Dies beinhaltet die Datenbank.
Navigieren Sie zu Einstellungen. Sie können das Einstellungsmenü entweder in Ihrem Apps-Menü oder auf den meisten Telefonen aufrufen, indem Sie die Benachrichtigungsschublade herunterziehen und dort auf eine Schaltfläche tippen.
Wählen Sie das Untermenü Apps. Auf einigen Telefonen hat dieses Menü einen etwas anderen Namen, z. B. Application Manager.
Wischen Sie nach rechts zur Liste Alle Apps. Ignorieren Sie die Listen der laufenden und heruntergeladenen Apps. Sie möchten die Liste Alle Apps.
Wählen Sie die App aus, die Sie deaktivieren möchten. Ein Eigenschaftenbildschirm wird mit einer Schaltfläche für Force Stop oben links und einer weiteren Schaltfläche zum Deaktivieren oder Deinstallieren von Updates oben rechts angezeigt.
Daten löschen.
quelle