Tengo aplicaciones como Any.DO y AK Notepad instaladas en mi teléfono Samsung Galaxy Y Android 2.3.6. Probé Titanium Backup y App 2 SD (mover aplicación a SD) pero aún no puedo mover estas aplicaciones a la tarjeta SD. ¿Qué ocurre? ¿Puede alguien ayudarme aquí?
Una aplicación debe ser compatible explícitamente con App2SD o no podrá moverla a la tarjeta. Hay varias razones por las que una aplicación podría no ser compatible:
Como la tarjeta SD sería inaccesible cuando se conectara a una computadora, ambas cosas se "bloquearían" (ya que ya no podrían acceder a sus datos, etc.). Por supuesto, siempre existe la posibilidad de que al desarrollador simplemente no le importe, en cuyo caso debe contactarlo y preguntar.
Hay algunos factores que pueden afectar esto:
Una aplicación debe declarar explícitamente que es preferible/posible instalarla en una tarjeta SD.
A partir del nivel 8 de API, puede permitir que su aplicación se instale en el almacenamiento externo (por ejemplo, la tarjeta SD del dispositivo). Esta es una función opcional que puede declarar para su aplicación con el
android:installLocation
atributo de manifiesto. Si no declara este atributo, su aplicación se instalará solo en el almacenamiento interno y no se podrá mover al almacenamiento externo .
(Énfasis mío)
Una aplicación está configurada para compilar usando API 7 (Froyo) o inferior, que no admite la instalación de una aplicación en la tarjeta SD (incluso si está instalada en GingerBread o dispositivos más nuevos)
La capacidad de que su aplicación se instale en el almacenamiento externo es una característica disponible solo en dispositivos que ejecutan API Nivel 8 (Android 2.2) o superior. Las aplicaciones existentes creadas antes del nivel 8 de API siempre se instalarán en el almacenamiento interno y no se pueden mover al almacenamiento externo (incluso en dispositivos con nivel 8 de API) . Sin embargo, si su aplicación está diseñada para admitir un nivel de API inferior a 8, puede optar por admitir esta función para dispositivos con nivel de API 8 o superior y seguir siendo compatible con dispositivos que utilizan un nivel de API inferior a 8.
(Énfasis mío)
Las razones por las que no es preferible instalar algunas aplicaciones en la tarjeta SD son las siguientes:
Cuando el usuario habilita el almacenamiento masivo USB para compartir archivos con su computadora (o desmonta o elimina el almacenamiento externo), cualquier aplicación instalada en el almacenamiento externo y que se esté ejecutando actualmente se elimina. El sistema efectivamente ignora la aplicación hasta que se desactiva el almacenamiento masivo y se vuelve a montar el almacenamiento externo en el dispositivo. Además de matar la aplicación y hacer que no esté disponible para el usuario, esto puede dañar algunos tipos de aplicaciones de una manera más grave. Para que su aplicación se comporte de manera consistente como se espera, no debe permitir que su aplicación se instale en el almacenamiento externo si utiliza alguna de las siguientes funciones, debido a las consecuencias citadas cuando se desmonta el almacenamiento externo:
Servicios
Su ejecución
Service
se interrumpirá y no se reiniciará cuando se vuelva a montar el almacenamiento externo. [...]Servicios de alarma
Sus alarmas registradas con
AlarmManager
serán canceladas. [...]Motores de método de entrada
Su IME será reemplazado por el IME predeterminado. [...]
Fondos de pantalla vivos
Su Live Wallpaper en ejecución será reemplazado por el Live Wallpaper predeterminado. [...]
Widgets de aplicaciones
Su App Widget se eliminará de la pantalla de inicio. Cuando se vuelve a montar el almacenamiento externo, su App Widget no estará disponible para que el usuario lo seleccione hasta que el sistema reinicie la aplicación principal (generalmente no hasta que se reinicie el sistema).
Gerente de Cuentas
Sus cuentas creadas con
AccountManager
desaparecerán hasta que se vuelva a montar el almacenamiento externo.Adaptadores de sincronización
Tu
AbstractThreadedSyncAdapter
y toda su funcionalidad de sincronización no funcionarán hasta que se vuelva a montar el almacenamiento externo.Administradores del dispositivo
Usted
DeviceAdminReceiver
y todas sus capacidades de administración se desactivarán, lo que puede tener consecuencias imprevisibles para la funcionalidad del dispositivo, que puede persistir después de volver a montar el almacenamiento externo.Receptores de difusión que escuchan "arranque completado"
El sistema entrega la
ACTION_BOOT_COMPLETED
transmisión antes de que el almacenamiento externo se monte en el dispositivo. Si su aplicación está instalada en el almacenamiento externo, nunca podrá recibir esta transmisión.Si su aplicación utiliza alguna de las funciones enumeradas anteriormente, no debe permitir que su aplicación se instale en un almacenamiento externo.
(Algunas partes están redactadas. Explican lo que los desarrolladores deben hacer para que sus aplicaciones funcionen correctamente después de volver a montar la tarjeta SD).
Nota : esta respuesta sirve como información general sobre "¿Por qué algunas aplicaciones no se pueden mover a la tarjeta SD?"
Fuente: Desarrolladores de Android: Ubicación de instalación de la aplicación .
Definitivamente es posible mover aplicaciones a la tarjeta SD y seguir funcionando perfectamente (widgets y servicios incluidos) a través de Link2SD.
EDITAR: El uso de este método requiere acceso de raíz en su teléfono y también necesita formatear su tarjeta SD para tener una segunda partición.
Para evitar volver a publicar la respuesta de forma redundante aquí, solo dejaré un enlace: https://android.stackexchange.com/a/145591/167026
Flujo
izzy
Sylvain Huard