Vermeiden Sie das Löschen der Daten aus der Datenbank, wenn Sie in den App-Einstellungen auf dem Android-Gerät auf die Schaltfläche "Daten löschen" klicken

8

Ich verwende database , um einige data zu speichern. Wenn der Benutzer jedoch zu Apps Setting s wechselt und in den App-Einstellungen auf die Schaltfläche 'clear data' drückt, werden Daten in Datenbanken gelöscht, wodurch dies vermieden werden kann. Kann ich 'clear data' BUTTON für meine App in den Apps-Einstellungen als nicht aktiviert oder andere Vorschläge machen ....

    
Sharanabasu Angadi 04.03.2013, 10:06
quelle

5 Antworten

1

Endlich habe ich eine Lösung gefunden. Wenn Sie den Anwendungssystemadministrator machen, ist es nicht möglich, Daten zu löschen und die App zu deinstallieren

    
Sharanabasu Angadi 24.06.2014, 09:57
quelle
3

Es gibt keinen direkten Weg, um zu vermeiden, dass App-Daten von dem, was ich weiß, gelöscht werden.

Sie können jedoch Ihre Daten auf dem externen Speicher (SD-Karte) in einer Datei speichern und bei jedem Start der App prüfen, ob diese Datei vorhanden ist und ihren Inhalt in die Datenbank einbinden. Dies wird natürlich nicht funktionieren, wenn der Benutzer manuell Ihre Sicherungsdatei von der SD löscht, eine andere SD einfügt, die SD entfernt oder das Gerät als eingehängtes Laufwerk mit dem Computer verbindet und dann die App startet.

    
iseeall 04.03.2013 10:11
quelle
3

Android fragt nicht, ob Ihre App gelöscht werden soll oder nicht. Es ist eine Systemfunktionalität, die dem Benutzer zur Verfügung gestellt wird. Der Benutzer kann die App vollständig deinstallieren.

Also, erstelle / öffne die Datenbankdatei an einem anderen Ort.

Datenhaltbarkeit:

  1. App-Cache-Verzeichnis: Wird gelöscht, wenn der interne Speicher zu niedrig ist.
  2. App-Datenverzeichnis: Wird gelöscht, wenn der Benutzer App-Daten löscht, App wird deinstalliert.
  3. Externer Speicher: Benutzer kann jederzeit löschen, Benutzer kann auch den Speicher entfernen.
  4. Backup-Manager: Neue Versionen von Android bieten Apps zum Backup von Daten in der Cloud über BackupManager.
  5. Remoteserver: Bleibt im Server, bis er gelöscht wird.
S.D. 04.03.2013 10:12
quelle
3

Hinzufügen android:manageSpaceActivity=".ActivityOfMyChoice" zum Anwendungs-Tag deines Manifests wie:

<application android:label="MyApp" android:icon="@drawable/icon" android:manageSpaceActivity=".ActivityOfMyChoice" >

Dann gibt es anstelle von "Daten löschen" eine Schaltfläche für "Raum verwalten", die ActivityOfMyChoice

startet

ActivityOfMyChoice.java

%Vor%

Wenn Sie also auf die Manage-Aktivität klicken, wird die Aktivität beendet.

    
Renjith Krishnan 12.12.2013 07:31
quelle
1

Ich denke, es gibt einen Weg, aber ich habe es noch nicht ausprobiert. Sie können Ihre DB-Datei im Asset-Ordner speichern, überprüfen Sie, ob es verfügbar ist, ansonsten tun Sie einfach Ссылка (achten Sie auf DataBaseHelper Klasse). Aber auf diese Weise verlieren Sie alle "Update-Daten".

    
Vinh.TV 28.05.2015 02:34
quelle

Tags und Links