Depuis un certain temps, je n'ai pas été en mesure de créer une pleine adb backup
de mon Nexus 4.
J'ai finalement réussi à obtenir un rapport d'erreur un peu plus utile avec logcat :
D/BackupManagerService( 2061): Calling doFullBackup() on de.blinkt.openvpn
I/file_backup_helper( 9115): Name: apps/de.blinkt.openvpn/r/app_webview
I/file_backup_helper( 9115): Name: apps/de.blinkt.openvpn/r/app_webview/Web Data-journal
I/file_backup_helper( 9115): Name: apps/de.blinkt.openvpn/r/app_webview/Web Data
I/file_backup_helper( 9115): Name: apps/de.blinkt.openvpn/r/app_webview/paks
I/file_backup_helper( 9115): Name: apps/de.blinkt.openvpn/f/8b8192c9-4aa3-42b3-affb-fd49fc7044d7.vp
I/file_backup_helper( 9115): Name: apps/de.blinkt.openvpn/sp/WebViewChromiumPrefs.xml
I/file_backup_helper( 9115): Name: apps/de.blinkt.openvpn/sp/activities.LogWindow.xml
I/file_backup_helper( 9115): Name: apps/de.blinkt.openvpn/sp/de.blinkt.openvpn_preferences.xml
I/file_backup_helper( 9115): Name: apps/de.blinkt.openvpn/sp/VPNList.xml
I/art ( 2268): Wrote stack traces to '/data/anr/traces.txt'
I/art ( 2288): Wrote stack traces to '/data/anr/traces.txt'
I/art ( 2717): Wrote stack traces to '/data/anr/traces.txt'
I/art ( 2061): Explicit concurrent mark sweep GC freed 217771(9MB) AllocSpace objects, 32(1594KB) LOS objects, 33% fr
ee, 29MB/44MB, paused 2.136ms total 158.660ms
E/BackupManagerService( 2061): Internal exception during full backup
E/BackupManagerService( 2061): java.lang.ArrayIndexOutOfBoundsException: length=32768; regionStart=0; regionLength=-1
E/BackupManagerService( 2061): at java.util.Arrays.checkOffsetAndCount(Arrays.java:1719)
E/BackupManagerService( 2061): at java.util.zip.DeflaterOutputStream.write(DeflaterOutputStream.java:174)
E/BackupManagerService( 2061): at com.android.server.backup.BackupManagerService.routeSocketDataToOutput(BackupManagerSe
rvice.java:3135)
E/BackupManagerService( 2061): at com.android.server.backup.BackupManagerService.access$900(BackupManagerService.java:15
8)
E/BackupManagerService( 2061): at com.android.server.backup.BackupManagerService$FullBackupEngine.backupOnePackage(Backu
pManagerService.java:3271)
E/BackupManagerService( 2061): at com.android.server.backup.BackupManagerService$PerformAdbBackupTask.run(BackupManagerS
ervice.java:3849)
E/BackupManagerService( 2061): at java.lang.Thread.run(Thread.java:818)
D/BackupManagerService( 2061): Full backup processing complete.
D/bu ( 6589): Finished.
D/AndroidRuntime( 6589): Shutting down VM
D/BackupManagerService( 2061): Full backup pass complete.
J'utilise CyanogenMod 12.1-20151007-SNAPSHOT-YOG4PAO334-mako
. Ce problème a pourtant commencé quelques versions plus tôt.
Mon système de fichiers Android est crypté. J'exécute habituellement la sauvegarde comme ceci :
adb backup -apk -shared -system -all -f "adb-backup.$(date +"%Y%m%d").ab"
Des idées ?
(BTW, je pense que le fait qu'OpenVPN était en cours de sauvegarde juste avant le problème est probablement un faux-fuyant).