¿Dónde almacena Android la configuración de aplicación predeterminada que conecta cada tipo de contenido con una aplicación designada? Me refiero a qué aplicación abre cada tipo de archivo o tipo de contenido, por lo que si tengo dos lectores de PDF y descargué un archivo PDF, Android usará uno de ellos sin permitir que el usuario elija.
Sé que puedo borrar la configuración predeterminada de una aplicación, pero no es lo que busco.
Quiero encontrar la tabla/base de datos/archivo que usa Android para esto. ¿Está en un archivo de base de datos sqlite? ¿Dónde se almacena?
En Jelly Bean, las actividades preferidas se almacenan en el archivo XML /data/system/users/0/package-restrictions.xml
para el usuario principal. Otros usuarios tienen su ID de usuario en lugar de 0
en esa ruta. Si el sistema de archivos cifrados está habilitado, comienza con /data/secure/system
en lugar de /data/system
.
Excepto a través del PackageManager
servicio, este archivo solo puede ser accedido por root. Puede ver el código que lee y escribe el archivo (y así inferir el formato) en la clase com.android.server.pm.Settings
.
Si tuviera un archivo de imagen en mi tarjeta SD, lo abriría a través de QuickPic porque ese es mi visor de galería predeterminado. Si quisiera cambiar mi visor de galería predeterminado, iría a Configuración -> Aplicaciones -> QuickPic -> "Borrar datos" y luego podría seleccionar cómo abrir un archivo de imagen nuevamente.
Por lo tanto, parece que Android almacena los datos de la aplicación predeterminada dentro de los archivos de datos del programa que se está utilizando.
t0mm13b
izzy
Esteban S.
Francisco Alvarado
t0mm13b