No se pueden mover algunas aplicaciones a la tarjeta SD

9

Tengo aplicaciones como Any.DO y AK Notepad instaladas en mi teléfono Samsung Galaxy Y Android 2.3.6. He intentado Titanium Backup y App 2 SD (mover la aplicación a SD) pero aún no puedo mover estas aplicaciones a la tarjeta SD. Que pasa ¿Alguien puede ayudarme aquí?

Izzy
fuente
1
¿Qué sucede si intentas mover las aplicaciones a SD?
Flujo
1
@Flow, mira mi respuesta. Ambas aplicaciones tienen widgets integrados, por lo que lo más probable es que no sean compatibles con App2SD.
Izzy
Si desea mover su aplicación a la tarjeta SD por "poco almacenamiento interno", vaya a android.stackexchange.com/questions/30620/…
Sylvain Huard

Respuestas:

7

Una aplicación debe admitir explícitamente App2SD, o no puede moverla a la tarjeta. Hay varias razones por las que una aplicación podría no ser compatible:

  • usando widgets (ambas aplicaciones mencionadas parecen caer en esta categoría. Bloc de notas AK: "Anclar notas a su pantalla de inicio"; Any.DO: "Incluso puede agregar nuestro widget a su pantalla de inicio")
  • ejecutar un servicio

Como la tarjeta sd sería inaccesible cuando se conecta 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 importara, en cuyo caso debe comunicarse con él y preguntarle.

Izzy
fuente
Me he encontrado con un caso interesante: una aplicación, f-droid.org/repository/browse/?fdid=com.nanoconverter.zlab que tiene un defecto, ofrece servicio y widget en segundo plano, pero mi 4.2.2 puede moverlo a Tarjeta SD (perdiendo esa funcionalidad, ofc).
Consultoría gratuita el
3

Hay algunos factores que pueden afectar esto:

  1. Una aplicación debe declarar explícitamente que es preferible / posible instalarla en la 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 característica opcional que puede declarar para su aplicación con el android:installLocationatributo manifiesto. Si no declara este atributo, su aplicación se instalará solo en el almacenamiento interno y no se puede mover al almacenamiento externo .

    (El énfasis es mío)

  2. Una aplicación está configurada para compilarse utilizando 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 posibilidad de que su aplicación se instale en el almacenamiento externo es una característica disponible solo en dispositivos que ejecutan API Level 8 (Android 2.2) o superior. Las aplicaciones existentes que se crearon 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 API inferior a 8, puede optar por admitir esta función para dispositivos con nivel API 8 o superior y seguir siendo compatible con dispositivos que utilizan un nivel API inferior a 8.

    (El énfasis es 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 de lo contrario desmonta o elimina el almacenamiento externo), cualquier aplicación instalada en el almacenamiento externo y actualmente en ejecución se anula. El sistema no tiene conocimiento de la aplicación hasta que se deshabilita el almacenamiento masivo y el almacenamiento externo se vuelve a montar en el dispositivo. Además de eliminar la aplicación y hacer que no esté disponible para el usuario, esto puede romper algunos tipos de aplicaciones de una manera más seria. Para que su aplicación se comporte consistentemente como se esperaba, no debe permitir que su aplicación se instale en el almacenamiento externo si utiliza alguna de las siguientes características, debido a las consecuencias citadas cuando el almacenamiento externo se desmonta:

  • Servicios

    Su ejecución Servicese anulará y no se reiniciará cuando se vuelva a montar el almacenamiento externo. [...]

  • Servicios de alarma

    Sus alarmas registradas con AlarmManagerserán canceladas. [...]

  • Método de entrada Motores

    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 aplicación Widget se eliminará de la pantalla de inicio. Cuando se vuelve a montar el almacenamiento externo, el widget de la aplicación no estará disponible para que el usuario seleccione hasta que el sistema restablezca la aplicación de inicio (generalmente no hasta que se reinicie el sistema).

  • Gerente de Cuentas

    Sus cuentas creadas con AccountManagerdesaparecerán hasta que se vuelva a montar el almacenamiento externo.

  • Adaptadores de sincronización

    Tu AbstractThreadedSyncAdaptery todas sus funciones de sincronización no funcionarán hasta que se vuelva a montar el almacenamiento externo.

  • Administradores del dispositivo

    Usted DeviceAdminReceivery 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 que se vuelva a montar el almacenamiento externo.

  • Los receptores de difusión escuchan "arranque completado"

    El sistema entrega la ACTION_BOOT_COMPLETEDtransmisió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 características enumeradas anteriormente, no debe permitir que su aplicación se instale en 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 para "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 .

Andrew T.
fuente
1

Definitivamente es posible mover aplicaciones a la tarjeta SD y aún así tenerlas funcionando perfectamente (widgets y servicios incluidos) a través de Link2SD.

EDITAR: El uso de este método requiere acceso de root en su teléfono y también necesita que su tarjeta SD esté formateada para tener una segunda partición.

Para evitar volver a publicar la respuesta de forma redundante aquí, simplemente dejaré caer un enlace a ella: https://android.stackexchange.com/a/145591/167026

Divulgado
fuente