los widgets no funcionan cuando la aplicación se mueve a la tarjeta SD

Cuando muevo mis aplicaciones a la tarjeta SD usando la función "Mover a la tarjeta SD" en ICS, los widgets para una aplicación en particular dejan de funcionar y dice "Problema al cargar el widget". ¿Alguien sabe una solución para esto? o solo tengo que mantener la aplicación en la memoria interna para que funcionen los widgets?,

Respuestas (2)

Hay algunas razones técnicas explicadas en el sitio web de desarrolladores de Android que justifican por qué el widget puede haber dejado de funcionar:

No se recomienda mover ninguno de estos a un almacenamiento externo debido a una posible falla:

  • Servicios

    Su servicio en ejecución se cancelará y no se reiniciará cuando se vuelva a montar el almacenamiento externo. Sin embargo, puede registrarse para la intención de transmisión ACTION_EXTERNAL_APPLICATIONS_AVAILABLE, que notificará a su aplicación cuando las aplicaciones instaladas en el almacenamiento externo vuelvan a estar disponibles para el sistema. En ese momento, puede reiniciar su Servicio.

  • Servicios de alarma

    Sus alarmas registradas con AlarmManager serán canceladas. Debe volver a registrar manualmente cualquier alarma cuando se vuelva a montar el almacenamiento externo.

  • Motores de método de entrada

    Su IME será reemplazado por el IME predeterminado. Cuando se vuelve a montar el almacenamiento externo, el usuario puede abrir la configuración del sistema para habilitar su IME nuevamente.

  • Fondos de pantalla vivos

    Su Live Wallpaper en ejecución será reemplazado por el Live Wallpaper predeterminado. Cuando se vuelve a montar el almacenamiento externo, el usuario puede seleccionar su Live Wallpaper nuevamente.

  • 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

    Su AbstractThreadedSyncAdapter y toda su funcionalidad de sincronización no funcionarán hasta que se vuelva a montar el almacenamiento externo.

  • Administradores del dispositivo

    Su DeviceAdminReceiver y todas sus capacidades de administración se desactivarán, lo que puede tener consecuencias imprevisibles para la funcionalidad del dispositivo, que pueden persistir después de volver a montar el almacenamiento externo.

  • Receptores de difusión que escuchan "arranque completado"

    El sistema entrega la transmisión ACTION_BOOT_COMPLETED 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.

  • Protección de copia

    Su aplicación no se puede instalar en la tarjeta SD de un dispositivo si utiliza la función de protección contra copias de Google Play. Sin embargo, si utiliza las licencias de aplicaciones de Google Play, su aplicación se puede instalar en un almacenamiento interno o externo, incluidas las tarjetas SD.

Como habrá adivinado, sus widgets, fondos de pantalla en vivo, etc. no funcionarán una vez que los mueva a la tarjeta SD. Si está rooteado, puede usar soluciones como link2sd y data2sd, que crean una partición adicional en su tarjeta SD para mover su aplicación o parte de la aplicación.