Guía de tecnologías

Error de instalación en Android: "Couldn't install on USB Storage" y Error -18

7 min read Android Actualizado 22 Oct 2025
Arreglar error de instalación Android en SD
Arreglar error de instalación Android en SD

Captura general de un teléfono Android mostrando un error de instalación

Los usuarios de Android suelen ver el teléfono funcionar sin problemas hasta que, de repente, una actualización falla y aparece un mensaje críptico. Aquí hemos recopilado todas las soluciones fiables para el error de instalación que dice “Couldn’t install on USB Storage” o “Error -18 Unknown” y explicamos por qué ocurre y cuándo aplicar cada método.

Importante: antes de probar cualquier solución, comprueba si la tarjeta SD está llena. Un espacio insuficiente puede producir mensajes similares.

¿Qué causa este error?

Breve definición: smdl2tmp1.asec es un archivo temporal que el sistema de paquetes de Android crea al descargar o mover una aplicación a la tarjeta SD. Si la descarga/actualización se interrumpe (pérdida de red, extracción de la SD, fallo del proceso), el archivo temporal puede quedarse en la carpeta segura de la SD y bloquear futuras instalaciones.

Causas comunes:

  • Interrupción de la conexión a Internet durante la descarga o actualización.
  • Extracción de la tarjeta SD sin desmontarla.
  • Permisos insuficientes o procesos del instalador bloqueados.
  • Espacio insuficiente en la tarjeta SD.

Solución no técnica y rápida

Si quieres la manera más simple y rápida (sin ordenador ni comandos):

  1. Ve a Ajustes > Aplicaciones.
  2. Busca la aplicación que falla y pulsa “Mover al almacenamiento interno” o “Mover al teléfono”.
  3. Actualiza la aplicación desde Google Play.
  4. Si quieres, vuelve a moverla a la tarjeta SD.

Este hack funciona porque evita que el instalador use la ruta de la SD donde está el archivo temporal.

Solución para teléfonos rooteados

Requisito: acceso root. Usa un administrador de archivos con soporte root (Astro, Root Explorer, Solid Explorer con permisos root).

  1. Abre el explorador con permisos root.
  2. Navega a /sdcard/.android_secure o /mnt/secure/asec/
  3. Elimina el archivo smdl2tmp1.asec.
  4. Reinicia el teléfono y vuelve a intentar la instalación.

Nota: en dispositivos no rooteados estas carpetas y archivos no serán visibles.

Carpeta .android_secure en una tarjeta SD mostrando archivos ocultos

Solución con Windows (con lector o modo USB)

  1. Conecta el teléfono al PC y monta la tarjeta SD como unidad (modo Disco USB) o, mejor, extrae la tarjeta SD y conéctala a un lector de tarjetas en el ordenador.
  2. Asegúrate de que el explorador de archivos muestre archivos ocultos (en el Explorador de Windows: Vista > Elementos ocultos, o pulsa CTRL+H en algunas versiones/con configuraciones).
  3. Accede a la unidad correspondiente a la SD.
  4. Busca y borra el archivo smdl2tmp1.asec dentro de .android_secure o mnt/secure/asec.
  5. Desmonta la SD de forma segura y vuelve a insertarla en el teléfono.

Explorador de Windows mostrando archivos ocultos en una tarjeta SD

Solución con macOS (Finder)

Los pasos son parecidos a Windows, pero macOS oculta los archivos por defecto. Para mostrar archivos ocultos desde Terminal:

defaults write com.apple.Finder AppleShowAllFiles YES

Luego reinicia Finder: pulsa CMD-OPTION-ESC para abrir “Forzar salida de aplicaciones”, selecciona Finder y haz clic en Reiniciar.

Después, conecta la tarjeta SD (o monta el teléfono como dispositivo de almacenamiento masivo), localiza .android_secure o mnt/secure/asec y borra smdl2tmp1.asec. Para ocultar de nuevo los archivos ocultos:

defaults write com.apple.Finder AppleShowAllFiles NO

Reinicia Finder otra vez.

Terminal de macOS y Finder mostrando archivos ocultos tras ejecutar comandos

Solución por Terminal (Unix / macOS)

Si prefieres la línea de comandos y conoces el nombre del volumen de la SD, usa rm para borrar el archivo. Si no cambiaste el nombre de la SD, suele llamarse “No Name” o similar.

Ejemplo de comandos (ajusta NO\ NAME si tu volumen tiene otro nombre):

rm /Volumes/NO\ NAME/.android_secure/smdl2tmp1.asec
rm /Volumes/NO\ NAME/mnt/secure/asec/smdl2tmp1.asec

Asegúrate de escapar espacios con \ y verifica la ruta antes de borrar.

Consola Unix mostrando comandos rm sobre una tarjeta SD montada

SOP: Playbook rápido paso a paso

  1. Confirmar mensaje exacto de error y comprobar espacio disponible en la SD.
  2. Intentar la solución no técnica (mover app a almacenamiento interno y actualizar).
  3. Si falla y tienes PC/Mac: desmontar SD, conectar con lector y borrar smdl2tmp1.asec.
  4. Si tienes root: eliminar el archivo desde /sdcard/.android_secure o /mnt/secure/asec y reiniciar.
  5. Si nada funciona: borrar caché de Google Play (Ajustes > Aplicaciones > Google Play Store > Almacenamiento > Borrar caché y datos) y reiniciar.
  6. Último recurso: desinstalar la app, reinstalar desde Play Store o, si el problema afecta a varias apps, considerar copia de seguridad y formateo de la SD.

Criterios de aceptación

  • La app se actualiza o instala correctamente.
  • No aparecen mensajes “Couldn’t install on USB Storage” ni “Error -18”.
  • El resto de apps en la SD funcionan con normalidad.

Alternativas y cuándo aplicar cada una

  • Reinstalar Google Play: útil si el problema viene del gestor de paquetes.
  • Borrar caché y datos del gestor de paquetes (Play Store y Google Play Services): cuando el error persiste tras borrar smdl2tmp1.asec.
  • Formatear la SD (como FAT32 o exFAT según teléfono): si la SD está corrupta o varias apps fallan. Aviso: formatear borra todos los datos, haz copia de seguridad.
  • Restauración de fábrica: último recurso si el sistema de paquetes tiene problemas persistentes.

Contraejemplos (cuando estas soluciones fallan)

  • Si la SD está físicamente dañada (sectores defectuosos), borrar el archivo no solucionará los errores.
  • Si el problema lo causa la propia app (APK mal empaquetado), el error puede volver tras reinstalar.

Lista de comprobación para usuarios y administradores (role-based)

Usuario sin conocimientos técnicos:

  • ¿Hay espacio libre en la SD? (al menos unos cientos de MB para actualizaciones)
  • ¿Puedo mover la app al teléfono y actualizar?

Usuario avanzado / administrador:

  • ¿La SD está montada correctamente en el sistema operativo del PC?
  • ¿Puedo ver y borrar .android_secure/smdl2tmp1.asec?
  • ¿Se han limpiado cachés del instalador y Play Store?

Desarrollador / soporte técnico:

  • ¿La app usa instalación en la SD? Revisa el manifest y el flag “android:installLocation”.
  • ¿Hay errores relevantes en logcat durante la instalación?

Glosario (una línea cada término)

  • ASEC: formato de archivo de aplicación seguro usado por algunas versiones de Android al mover apps a SD.
  • Root: acceso administrativo al sistema Android que permite modificar archivos protegidos.
  • Montar/Desmontar: proceso por el cual el sistema operativo hace accesible una unidad de almacenamiento.

Buenas prácticas y recomendaciones

  • No retires la tarjeta SD sin desmontarla primero desde Ajustes > Almacenamiento > Expulsar o Desmontar.
  • Mantén copia de seguridad de tus datos importantes antes de formatear la SD.
  • Evita usar tarjetas SD muy baratas o de baja calidad; pueden fallar y provocar corrupción de datos.

Más lectura y recursos

  • Gentle Alarm – Una forma fantástica de despertarse gradualmente cada mañana.
  • Gestiona y comparte tus archivos con File Expert [Android].

¿Has solucionado algún error similar en Android? ¿Qué método te funcionó? Comparte tu experiencia para ayudar a otros.

Resumen

  • El error suele producirse por un archivo temporal (smdl2tmp1.asec) en la SD.
  • Las soluciones van desde mover la app al almacenamiento interno hasta borrar ese archivo desde PC, Mac, Terminal o con acceso root.
  • Si ninguna solución resuelve el problema, considera revisar la integridad de la SD, limpiar cachés del sistema o, como último recurso, formatear.
Autor
Edición

Materiales similares

Podman en Debian 11: instalación y uso
DevOps

Podman en Debian 11: instalación y uso

Apt-pinning en Debian: guía práctica
Sistemas

Apt-pinning en Debian: guía práctica

OptiScaler: inyectar FSR 4 en casi cualquier juego
Guía técnica

OptiScaler: inyectar FSR 4 en casi cualquier juego

Dansguardian + Squid NTLM en Debian Etch
Redes

Dansguardian + Squid NTLM en Debian Etch

Arreglar error de instalación Android en SD
Android

Arreglar error de instalación Android en SD

Conectar carpetas de red con KNetAttach
Redes

Conectar carpetas de red con KNetAttach