2016-07-28 26 views
2

Ich möchte die Android 6 Auto Backup-Funktion konfigurieren, um alle Dateien in ganzen Verzeichnissen (sowohl in "Dateien" und "extern") auszuschließen, auch einige spezifische Erweiterungen sollten ausgeschlossen werden. Werden Wildcards wie . und * .tn-png funktionieren für den Pfadwert? Ich kann nicht alle Dateien explizit definieren, da diese zur Laufzeit erstellt werden.Wie man ein komplettes Verzeichnis von Android 6 Auto Backup ausschließt?

android:fullBackupContent="@xml/mybackupscheme" 

wo mybackupscheme würde zum Beispiel sein:

<?xml version="1.0" encoding="utf-8"?> 
<full-backup-content> 
    <exclude domain="file" path="device-links.xml"/> 
    <exclude domain="file" path="*.tn-png"/> 
    <exclude domain="file" path="links/*.*"/> 
    <exclude domain="external" path="external-links/*.*" /> 
</full-backup-content> 

Vielen Dank im Voraus,

+0

Ich habe das gleiche Problem hier. Hast du es herausgefiltert? – michalsol

+0

Nein, ich habe noch keine Lösung, außer die Ordnerstruktur neu zu organisieren. –

Antwort

1

Die official documentation sagt:

Pfad: Gibt eine Datei oder einen Ordner enthalten in oder von der Sicherung ausschließen. Beachten Sie Folgendes: Dieses Attribut unterstützt keine Platzhalter- oder Regex-Syntax.

Sie können also keine Platzhalter verwenden.

Aber Sie exclude können ganze Verzeichnisse

<exclude> auszuschließen - Gibt eine Datei oder einen Ordner bei der Sicherung auszuschließen.

Wenn Sie wirklich komplexe Dateistruktur haben, können Sie eigene BackupAgent implementieren und onFullBackup Methode overide.

Sie können die Gruppe von Dateien, die Sie sichern möchten, nicht einfach mit den XML-Regeln ausdrücken. In diesen seltenen Fällen können Sie einen BackupAgent implementieren, der OnFullBackup (FullBackupDataOutput) überschreibt, um zu speichern, was Sie möchten. Um die Standardimplementierung des Systems beizubehalten, rufen Sie die entsprechende Methode für die Superklasse mit super.onFullBackup() auf.