¿Estás completamente seguro de que el comando de abajo es el que realmente ejecutaste? ¿Y que no recibiste ningún mensaje de error?
adb push large.zip /data/local/
Cuando intento hacer algo similar, obtengo:
adb push adb.exe /data/local/
adb: error: failed to copy 'adb.exe' to '/data/local/adb.exe': remote couldn't create file: Permission denied
adb.exe: 1 archivo enviado, 0 omitidos. 120.7 MB/s (5857056 bytes en 0.046s)
Eso parece que tuvo éxito, si solo miras la última línea de la salida, pero realmente falló. Esto no está muy bien manejado, porque los datos realmente se transmiten, lo que puede llevar cantidades notables de tiempo para un archivo grande. He reportado esto en el rastreador de problemas de Google.
Añadido: Intenté un experimento adicional:
Inicia una sesión de adb shell
y cd /data/local/tmp
. Esa es una subcarpeta de /data/local
, donde la cuenta del shell puede crear archivos, y generalmente hacer lo que quiera. Obtén el espacio libre ahí:
df -k .
Filesystem 1K-bloques Usado Disponible Uso% Montado en
/dev/block/dm-52 111478764 15015348 96332344 14% /storage/emulated/0/Android/obb
Inicia una ventana de línea de comandos adicional, y envía un archivo grande:
adb push largefile.zip /data/local
adb: error: failed to copy 'largefile.zip' to '/data/local/largefile.zip': remote couldn't create file: Permission denied
largefile.zip: 1 archivo enviado, 0 omitidos. 30.4 MB/s (286500912 bytes en 8.992s)
Luego verifica el espacio libre nuevamente, y ha disminuido, pero no en nada parecido al tamaño del archivo enviado:
df -k .
Filesystem 1K-bloques Usado Disponible Uso% Montado en
/dev/block/dm-52 111478764 15015444 96332248 14% /storage/emulated/0/Android/obb
Eso no prueba que no se use un directorio temporal, pero muestra que si lo hay, se limpia cuando adb push
encuentra un problema de permisos.