Datos de enlace descendente de la ruta de Android vía WiFi y datos de enlace ascendente a través de la red móvil

¿Es posible en android para enrutar todo el tráfico de datos entrantes a través de WiFi y todo el tráfico saliente a través de la red móvil.

Encontrar una respuesta en stackoverflow Cómo Wifi y datos móviles funcionan simultáneamente en android para dispositivo OBD2 . Sin embargo, los datos de la ruta sólo para un host.

También hay una aplicación de SuperDownload que utiliza wifi y red móvil para lograr velocidades de descarga más rápidas. Estoy tratando de hacer algo como esto.

En android WiFi y la red móvil no funciona simultáneamente. ¿Es posible hacerlo funcionar enraizando el dispositivo? (SuperDownload requiere root).

No es fácil lo que harías.

Primero en primer lugar debes mantener en la interfaz de red, esto es posible, pero es un hack porque Android no lo soporta. Para ello debe encender

connectivityManager.startUsingNetworkFeature(ConnectivityManager.TYPE_MOBILE, "feature"); 

El nombre de la función está relacionado con su hardware, debe ser enableHIPRI . El problema es que después de encender la interfaz esto se apagará después de algún tiempo, por esta razón debe realizar una solicitud http cada 20-30 segundos para mantenerlo. De esta manera la interfaz permanecerá encendida.

A la ruta, debe agregar ruta estática

 connectivityManager.requestRouteToHost(ConnectivityManager.TYPE_MOBILE_HIPRI, ipAddressInt); 

Donde ipAddressInt es la dirección que desea conectar en 3G. Normalmente las rutas se envían a través de WiFi, por lo que para su GET (descarga en WiFi) no hay ningún problema, pero debe agregar una ruta para subir.

Y ahora hay 2 problemas,

  • Primero es que de esta manera en 3G la resolución de DNS se ha ido, puede trabajar en IP, pero debe tener un servidor con IP estática,
  • Segundo, no estoy seguro si funciona en un puerto específico (que es la única idea que tengo en este momento para hacerlo …).

Por supuesto que debe implementar otro hilo que mantener vivo la interfaz.

Creo que es imposible en absoluto. Piense, ¿cómo su destino puede encontrar la ruta de respuestas para entregarlo?

Permítanme ser más claro, cuando usted está tratando de obtener algo de la red (por ejemplo, una página web), debe poner su dirección IP y su dirección IP de destino en un paquete y enviarlo a la red (wifi o 3g) y el Red lo encaminhará a su destino. Cuando su respuesta está lista, el destino invierte el proceso y coloca su dirección IP como dirección de destino y su dirección IP como fuente y la libera a la red. Una vez más, la red usando esta información le encontrará y le entregará el paquete. Por lo tanto, nunca puede enviar información a una red (por ejemplo, wifi) y recibir la respuesta de otra red (por ejemplo, 3g).

Nota: Si todos los routers de medio camino toman conciencia de su objetivo (enviar y recibir desde y hacia dos redes diferentes), será posible hacerlo. En la actualidad, en algunos protocolos de enrutamiento especialmente en los routers de borde, que usualmente utilizan los gobiernos, algo así como su objetivo se trabaja para que superen la velocidad limitada de los medios de transmisión, por ejemplo, fibra óptica (tener más de 10/100 gbps).

  • ADB, Wifi y Eclipse: ¿cómo puedo configurar?
  • Solicitar al usuario que active Wi-Fi
  • ¿Cómo depurar Android 6.0 sobre Wi-Fi? (Problema netcfg)
  • Android - No puede eliminar la red Wifi de forma programática El método removeNetwork (int) en el tipo WifiManager no es aplicable a los argumentos (String)
  • Cómo deshabilitar el asistente de red cautiva en el dispositivo Android?
  • Aplicación de mapas personalizados en interiores
  • Chat wifi entre dos o más dispositivos Android
  • Android 5.0 Lollipop y 4.4 KitKat ignora mi red WiFi, enableNetwork () es inútil
  • LocationManager devuelve la antigua ubicación en caché "Wifi" con la marca de hora actual
  • Supervisión del WiFi en el dispositivo Android
  • Java.net.SocketException: recvfrom falló: ECONNRESET (Conexión restablecida por pares) Más de WIFI
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.