Cuando una aplicación se mueve forzadamente a SD-Card, ¿dónde van SharedPreferences?
Tengo una aplicación de Android que tiene un servicio y esto sólo se debe instalar internamente. Sin embargo, algunos usuarios con ROOT lo están instalando en la tarjeta SD y están reportando todo tipo de errores extraños.
Cuando un usuario hace eso, ¿dónde van las SharedPreferences? ¿También se almacenan en la tarjeta SD (realmente malo para mí, ya que los escribo a menudo) o están siempre en el almacenamiento interno? Algunos de los errores que he visto parecen indicar esta situación.
- ¿Se eliminan las preferencias compartidas asociadas con la aplicación cuando se quita la aplicación?
- Guardar datos de ListView utilizando SharedPreferences
- sharedPreferences no compartirá entre las actividades
- SharedPreferences no funciona en todas las actividades
- Android: Cómo obtener el tiempo de un TimePicker cuando se escribe en
En caso afirmativo, ¿cómo puedo detectar que mi archivo SharedPreference está realmente en la tarjeta SD?
¡Gracias!
- ¿Contexto de la aplicación para SharedPreferences?
- Guardar un arraylist de cadenas a las preferencias compartidas
- El valor SharedPreferences no se actualiza
- MODE_PRIVATE en error de preferencias compartidas
- FindPreference devuelve NULL en el prefit nombre pref
- Cifrar datos en SharedPreferences
- Cómo guardar un paquete completo en SharedPreferences
- Leer la preferencia compartida cuando se cambia el contexto
Cuando la aplicación se mueve a la tarjeta SD, sólo la .apk se mueve a /mnt/asec/package_name/pkg.apk. Los directorios y archivos de shared_prefs, caché, bases de datos, etc. permanecen en la partición / data en / data / data / package_name.
Comprobé esto en mi enraizada Moto Droid 1 corriendo Bugless Beast 0.6.2.1.
FYI, los servicios se ejecutarán bien desde una aplicación que se ha movido a la tarjeta sd. El único problema con el traslado a la tarjeta sd es que cuando la tarjeta sd se desmonta, su aplicación (y sus servicios) no podrán ejecutarse.