4 votos

Copia de seguridad y restauración de los datos de la aplicación a través de adb

Tengo una aplicación instalada en mi antiguo teléfono con muchos ajustes y datos que quiero transferir a mi nuevo teléfono. Así que traté de usar adb backup :

$ sudo adb backup -f org.secuso.privacyfriendlynotes.ab -apk
org.secuso.privacyfriendlynotes
WARNING: adb backup is deprecated and may be removed in a future release
Now unlock your device and confirm the backup operation...

Lo cual funcionó bien:

$ ls -la
...
-rw-r-----.  1 root   root   5057212 Jul 16 10:59 org.secuso.privacyfriendlynotes.ab

Pero luego para importar los datos en mi nuevo teléfono, intenté usar adb restore :

sudo adb restore org.secuso.privacyfriendlynotes.ab
WARNING: adb restore is deprecated and may be removed in a future release
Now unlock your device and confirm the restore operation.

Desbloqueé y confirmé y el teléfono dijo "Restore starting..." y luego "Restore ended", así que todo parece estar bien. Pero los datos no se restauraron.

Comparación de /data/data/org.secuso.privacyfriendlynotes en ambos teléfonos muestra claramente que mis datos no fueron restaurados en absoluto.

Me doy cuenta de que abd backup y adb restore están en desuso. ¿Cuáles son las alternativas ahora? (No quiero usar Titanium Backup, etc. Sólo uso software de código abierto).

¿Existe una forma alternativa oficial de hacerlo?

1voto

Forivin Puntos 56

La única solución que se me ocurrió fue una combinación de adb pull , adb push , restorecon y chown :

APP_ID="org.secuso.privacyfriendlynotes"

# Backup (RUN WITH OLD PHONE CONNECTED)
adb pull "/data/data/${APP_ID}"

# Restore (RUN WITH NEW PHONE CONNECTED)
APP_OWNERSHIP=$(adb shell stat --format "%U:%G" "/data/data/${APP_ID}")
adb shell mv "/data/data/${APP_ID}" "/data/data/${APP_ID}_backup"
adb push "./${APP_ID}" "/data/data/${APP_ID}"
adb shell restorecon "/data/data/${APP_ID}"
adb shell chown -R "${APP_OWNERSHIP}" "/data/data/${APP_ID}"
#adb shell rm -rf "/data/data/${APP_ID}_backup"

Sin embargo, requiere Root.

PreguntAndroid.com

PreguntAndroid es una comunidad de usuarios de Android en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X