studio secure google gms developer android android-preferences android-backup-service

secure - En Android hay alguna forma de preservar las referencias compartidas después de una desinstalación



restore android backup (7)

Como dijo edthethird: mejor coloque los archivos físicos en el almacenamiento externo del dispositivo y léalos en la instalación. Si el contenido del archivo debe ocultarse a los usuarios, simplemente realice un proceso simple de cifrado / descifrado.

Estoy guardando algunos metadatos de la aplicación en SharedPreferences . Cada vez que desinstalo la aplicación y la SharedPreferences instalar, se eliminan las SharedPreferences .

¿Hay alguna manera de hacer que eso permanezca, de modo que si el usuario desinstala y reinstala, puede recuperar sus datos antiguos?



Desde Android 6.0 se ha podido utilizar:

<application android:allowBackup="true">

Al configurarlo como verdadero, sus datos (las preferencias compartidas y otros) se guardarán en la nube de Google y se restaurarán la próxima vez que se instale la aplicación. Puedes leer más sobre esto here . Cabe señalar que la configuración predeterminada es verdadera desde 6.0.


Esto está realmente integrado, solo necesitas implementar un par de clases para habilitarlo. Se realizará una copia de seguridad de los datos y se vincularán a la cuenta de Google del usuario, por lo que se restaurarán automáticamente si instalan la aplicación en un dispositivo nuevo, la reinstalan, etc.

http://developer.android.com/guide/topics/data/backup.html


Estoy bastante seguro de que SharedPreferences siempre se elimina junto con la aplicación. En mi opinión, la mejor manera de hacerlo sería escribir un archivo oculto (algo como ".nameOfFile") en la tarjeta SD o en la memoria interna y tener también las preferencias.

Sin embargo, debe usar SharedPreferences, es el estándar de Android para la administración de preferencias. Podría hacerlo para que la primera vez que su aplicación se cargue, verifique la tarjeta SD en busca de un archivo oculto que se habría creado la última vez que lo abrieron. Si el archivo existe, entonces lea esas entradas y almacénelas en SharedPreferences; si no, el usuario lo eliminó o el usuario nunca ha instalado su aplicación antes.

Esta es solo una forma de hacerlo, y puede que no sea la más eficiente, ¡pero espero que ayude!


SharedPrefs y DBs se eliminan cuando desinstala. Tendría que escribir fuera de la aplicación (por ejemplo, sd).


Una forma de hacerlo sería almacenar los datos del usuario en un servidor. Luego, cuando el usuario vuelve a instalar la aplicación o la instala en otro dispositivo, puede "sincronizar" sus datos de usuario. Eso sería solo una pequeña descarga HTTP de los datos, probablemente almacenados en JSON, que luego analizaría y escribiría en las SharedPreferences.

Si no desea mantener su propio servidor, puede usar un servicio en la nube como Dropbox. Así es como funciona la aplicación 1Password Reader.