¿Una forma rápida, fácil y confiable de transferir archivos grandes entre dispositivos Android? (también conocido como historias de WiFi Direct desde el campo)

Me gustaría poder transferir fácilmente archivos grandes de forma inalámbrica, rápida, entre dispositivos Android, preferiblemente sin necesidad de root.

Como objetivo secundario, no estaría de más si se pudiera usar la misma solución, para transferir archivos entre los dispositivos Android y una PC con Windows.

Específicamente, estoy tratando de intercambiar archivos entre mi Nexus 7 (Android 4.2.2) y Samsung Galaxy S2 (Android 4.0.4).

  • Bluetooth es simplemente demasiado lento, por lo que está fuera de discusión
  • La transferencia a través de Internet tampoco es una opción, por lo que también lo son las soluciones basadas en la nube.
  • Solo Nexus 7 es compatible con NFC, así que eso también está descartado
  • La transferencia rápida de archivos parecía prometedora y muy simple, pero no funciona en "Dispositivos que no tienen la configuración de Tethering WiFi, como el Nexus 7 ".

Wi-Fi directo ( compatible con Android 4.0 y superior) parece ser un mínimo común denominador decente entre mis dos dispositivos, sin embargo...

El envío nativo de Galaxys S2 a través de Wi-Fi Direct ve el Nexus, pero parece atascarse en "Conectando..." la mayoría de las veces. Cuando finalmente parece haber un gran avance, obtengo "Esperando..." y un círculo giratorio. Incluso si funcionara, solo me permitiría enviar desde el Galaxy S2 al Nexus 7, ya que una opción similar no está presente en el Nexus 7.

WiFi Direct de J4velin ya no está disponible en Play Store, con la siguiente explicación:

Los controladores WiFi Direct no funcionan en muchos dispositivos, lo que llevó a los usuarios a dejar comentarios negativos para esta aplicación. Como no veo ningún sentido en mantener una aplicación gratuita publicada cuando solo obtiene calificaciones de 1 estrella (por un problema que solo el fabricante de su dispositivo puede solucionar), la aplicación ya no está disponible en Play Store.

WiFi Direct File Transfer de Nick Adams parece escamoso en el mejor de los casos. Nunca se reciben invasiones de Nexus 7 a Galaxy S2. La mayoría de las invitaciones del Galaxy S2 se reciben, pero incluso cuando se aceptan con prontitud, los pares no siempre se muestran como conectados. Cuando finalmente lo hacen, generalmente después de una espera bastante larga, puedo seleccionar un archivo para enviar pero nunca se transfiere: "Transferencia fallida" dice casi inmediatamente en la barra de notificaciones.

WiFi Shoot de budius inc funciona un poco mejor, pero sigue siendo muy poco confiable. De hecho, me las arreglé (ocasionalmente) para enviar archivos en ambos sentidos, pero nunca al intentar la conexión desde el Nexus 7. Para enviar desde el Nexus 7 al Galaxy S2, tuve que pasar por esta maniobra incómoda:

  1. Comparta el archivo en el Nexus 7 a través de WiFi Shoot intent
  2. Inicie la aplicación Receive WiFi Shoot en el Galaxy S2
  3. Invita al Nexus 7 del Galaxy S2 (¡nunca al revés!)
  4. Acepta la invitación en el Nexus 7
  5. Presione el botón Disparar en el Galaxy S2

Tome todo el cambio de un dispositivo a otro y adórnelo con retrasos o fallas aleatorias en cualquier paso del proceso...

¿Realmente no existe una manera fácil, confiable y rápida de transferir archivos directamente entre diferentes dispositivos Android?

En general, mi experiencia con Wi-Fi Direct es casi positiva...

  • Un dispositivo a menudo ni siquiera verá un dispositivo junto a él
  • A veces, verá el otro dispositivo, solo para que desaparezca de la lista, antes de que tenga la oportunidad de conectarme.
  • Cuando tengo la oportunidad, las invasiones no se reciben de manera confiable (desde Galaxy S2 hasta Nexus 7 en su mayoría confiables, pero nunca funcionaron al revés)
  • Cuando se reciben (y aceptan) invitaciones, rara vez se logra establecer una asociación ("invitada" o "conectando")
  • E incluso cuando eso sucede, parece que algunas aplicaciones no pueden transferir archivos a través de él...

* suspiro *

Tal vez la explicación de J4velin resume bastante bien el triste estado de Wi-Fi Direct en Android, que por lo demás parecía la mejor solución para mi búsqueda.

Respuestas (7)

En lugar de dormir, pasé unas cuantas horas más experimentando.

Descubrí que lo que funciona mejor para mis necesidades es una aplicación de servidor FTP.

Para transferencias casuales, cuando ambos dispositivos están conectados a la misma red, solo transferiré a través de mi punto de acceso. Con las limitaciones que ello implica.

Si no estoy cerca de un punto de acceso o simplemente quiero la velocidad máxima, me ocuparé de la molestia de configurar la asociación directa de Wi-Fi y luego iniciaré el servidor FTP. Por lo general, toma de 3 a 5 intentos antes de que los dispositivos se conecten, pero una vez que lo hacen, el FTP funciona estable y rápido.

Además, esta solución también satisface mi objetivo secundario, poder usar el mismo método para transferir archivos entre el dispositivo Android y la PC.

Ahora, hay muchas aplicaciones de servidor FTP por ahí. La mayoría son compatibles con anuncios, la mayoría también son bastante grandes. Para mi sorpresa, también hay una gran diferencia de rendimiento entre ellos.

Pensé que también podría compartir mi experiencia con las cuatro aplicaciones de servidor FTP que probé...

Permisos requeridos

Ninguna de las aplicaciones probadas requería permisos ridículos. Solo los siguientes permisos especiales:

  • ACCESO TOTAL A LA RED
  • MODIFICA O ELIMINA EL CONTENIDO DE TU ALMACENAMIENTO USB MODIFICA O ELIMINA EL CONTENIDO DE TU TARJETA SD
  • EVITAR QUE LA TABLETA SE DUERMA EVITAR QUE EL TELÉFONO SE DUERMA

Además, el FTPServer de Andreas Liebig también requería:

  • LEER ESTADO E IDENTIDAD DEL TELÉFONO

Configuración de prueba de velocidad

La prueba de velocidad no se realizó científicamente, pero los dispositivos estaban exactamente en los mismos lugares durante las pruebas.

  • Aplicación de servidor FTP que se ejecuta en Nexus 7
  • Cliente FTP de FileZilla que se ejecuta en una computadora portátil con Windows 8
  • Ambos conectados a la misma red 802.11n. Windows informó que la velocidad del enlace era de 130 Mbps (sé que esto no es exacto)
  • Descargué el mismo archivo grande de 103,4 MiB dos veces a través de cada aplicación

Resultados de la prueba

Todas las estadísticas, números y otros datos corresponden al 30 de marzo de 2013.

Aplicaciones ordenadas por rendimiento medido, las más rápidas en la parte superior.

Servidor FTP de Andreas Liebig

  • Precio: Gratis
  • Última versión: 2.4.0 (2013-03-26)
  • Tamaño: 78 KB
  • Base instalada: 100.000 - 500.000
  • Promedio calificación: 4.6
  • Requisito del sistema operativo Android: 1.1+
  • Comentarios: Se requiere configuración inicial, no plug-and-play. Registro detallado del servidor en la pantalla principal cuando el servicio se está ejecutando. ¿No es posible el acceso anónimo?
  • Rendimiento: 103,4 MiB descargados en 43 segundos a 2,4 MiB/s , 103,4 MiB descargados en 47 segundos a 2,2 MiB/s

Mi servidor FTP de Boby Ertanto

  • Precio: Gratis (con publicidad, versión sin publicidad disponible)
  • Última versión: 2.1 (2013-02-28)
  • Tamaño: 1,2 MB
  • Base instalada: 50.000-100.000
  • Promedio calificación: 4.1
  • Requisito del sistema operativo Android: 2.2+
  • Comentarios: Interfaz sencilla. Configuraciones muy básicas.
  • Rendimiento: 103,4 MiB descargados en 48 segundos a 2,2 MiB/s , 103,4 MiB descargados en 49 segundos a 2,1 MiB/s

Servidor ftp del olivo

  • Precio: Gratis (con publicidad, versión sin publicidad disponible)
  • Última versión: 1.11 (2013-01-14)
  • Tamaño: 1,1 MB
  • Base instalada: 100.000 - 500.000
  • Promedio calificación: 4.4
  • Requisito del sistema operativo Android: 2.1+
  • Comentarios: Basado en el servidor ftp Apache. Interfaz sencilla. Puerto configurable, directorio de inicio, nombre de usuario/contraseña, resistencia del servicio, ahorro de energía, etc.
  • Rendimiento: 103,4 MiB descargados en 56 segundos a 1,8 MiB/s , 103,4 MiB descargados en 56 segundos a 1,8 MiB/s

FTPDroid de Berserker

  • Precio: Gratis (con publicidad, versión sin publicidad disponible)
  • Última versión: 1.3.1 (actualizado 2012-12-28)
  • Tamaño: 2,0 MB
  • Base instalada: 50.000 - 100.000
  • Promedio calificación: 3.9
  • Requisito del sistema operativo Android: 2.2+
  • Comentarios: Basado en Pure-FTPd. Interfaz sencilla. Puerto configurable, directorio de inicio, nombre de usuario/contraseña, resistencia del servicio, ahorro de energía, etc.
  • Rendimiento: 103,4 MiB descargados en 135 segundos a 0,8 MiB/seg , 103,4 MiB descargados en 121 segundos a 0,9 MiB/seg

Conclusión

El FTPServer de Andreas Liebig no solo es el único completamente gratuito de las aplicaciones probadas, sino que es increíblemente liviano (¡78 kB!), puede ejecutarse en cualquier teléfono Android que pueda encontrar, pero también tiene el rendimiento más rápido de las aplicaciones probadas.

Una vez que se realiza la configuración inicial, la ventana principal simplemente muestra el registro del servidor FTP estándar, mientras que otras aplicaciones prácticamente no muestran nada más que algunos botones y tal vez la dirección IP y el puerto del servidor.

¡Gracias, Andreas!

¡Soy Budius, el desarrollador de WiFi Shoot! y debo decir que la explicación de J4velin es realmente acertada y bastante triste.

Empecé a desarrollarlo solo porque vi esta tecnología genial y nadie la estaba usando, pero resultó ser un gran dolor de cabeza.

Incluso durante el desarrollo (estaba usando un Transformer TF300 y un Galaxy Nexus) me tomó mucho más tiempo del que debería y tuve muchos, muchos problemas simplemente porque la tecnología no funcionaba a nivel del controlador. Un ejemplo de ello es que Asus eliminó la compatibilidad con WiFi Direct en su Jelly-Bean integrado en el transformador (y esa fue la razón de una de mis calificaciones de 1 estrella, dejó de funcionar en el transformador del usuario)

Si mi aplicación fuera completamente gratuita, probablemente usaría el mismo enfoque de J4velin y simplemente la desconectaría, pero ahora siento que no puedo cancelarla para los usuarios que pagaron por ella.

Comencé a verificar algunas opciones para permitir que funcione con WiFi normal también y solo uso WiFi-Direct si el usuario lo solicita específicamente, pero es un proyecto personal y simplemente no tengo tiempo libre ahora.

Realmente espero que los fabricantes actúen juntos, pero no me haría ilusiones. Cualquiera que siempre use bluetooth todos los días (una tecnología que se desarrolló originalmente en 1994) sabe que a veces tiene que reiniciar su teléfono móvil solo para que se conecte a un auricular.

Lancé una aplicación la semana pasada que espero resuelva sus problemas. Amigos WiFi directos https://play.google.com/store/apps/details?id=com.cobaltstar.wififriends

Lo más importante es que puede transferir archivos en ambas direcciones una vez que los dos dispositivos están conectados, lo que creo que parece ser su principal gran problema. Entonces, aunque tenga que adivinar en qué dispositivo presionar conectar (culpar a los fabricantes de dispositivos), sabrá que una vez que estén conectados, puede enviar y recibir sin problemas. Asegúrate de no estar conectado a ninguna otra red WiFi o, de lo contrario, las cosas se volverán lentas y poco confiables.

También agregué el reinicio automático de WiFi cuando hay problemas o bloqueos en el proceso de conexión inicial, por lo que espero que no haya muchas conjeturas o solución de problemas.

Has dado en el clavo con respecto a encontrar problemas sobre cómo se implementa Wi-Fi Direct en estos dispositivos. Estamos lidiando con el caso de uso más trivial de la tecnología aquí e Internet está lleno de historias de aflicción. Direct simplemente no parece estar listo para el horario de máxima audiencia en ninguna característica importante de la que se deba depender.

Gracias por tu sugerencia. Le daría una oportunidad. "Direct simplemente no parece estar listo para el horario de máxima audiencia en ninguna característica importante de la que se deba depender" - ¡Amén!

Uso una aplicación llamada HitcherNet-BETA para mover archivos a través de Wifi Direct entre dispositivos. es rápido y estable, excelente para enviar archivos de video y otros archivos grandes. en jelly bean, los problemas de permisos de otras versiones se resuelven, por lo que es posible la transferencia bidireccional. Estoy trabajando con estos muchachos para construir wifi directo en una aplicación de juego que estoy construyendo.
https://play.google.com/store/apps/details?id=com.kharybdis.hitchernet

Otra posible solución que es muy útil es utilizar Total Commander con el plugin WiFi Transfer .

Luego, en TC, selecciona los archivos o carpetas para compartir, toca copiar/mover y selecciona Wifi. Si ya está conectado a una red Wifi, funcionará con eso, pero si no lo está, ofrece usar Wifi directo en su lugar.

Crea un servidor webdav al que puede conectarse con cualquier dispositivo con un navegador web.

Las tasas de transferencia también son rápidas.

En 2021, puede hacerlo directamente desde la aplicación "Archivos" de Google. Tiene botones simples de "enviar" y "recibir" y configura Wi-Fi punto a punto de forma temporal y segura sin problemas de configuración.

¿Has probado Superbeam ? Debería funcionar entre dispositivos Android, aunque no funcionará con PC.