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).

  • ¿Puedo obtener la dirección IP del punto de acceso a Estoy conectado a través de wifi?
  • Cómo google home app puede buscar auto wifi contraseña en android?
  • Establecer IP estática y pasarela programáticamente en Android 6.x (Marshmallow)
  • ¿Cómo obtener el nombre de la red wifi fuera de android utilizando la API de Android?
  • Android :: ¿Cómo desconectarse de una red wifi?
  • Averigüe si una dirección / puerto ya está enlazado bajo Android
  • Compruebe si la red ScanResult ya está configurada (existe en la lista getConfiguredNetworks ())
  • Cómo obtener la configuración del proxy WiFi en Android
  • Android WIFI Cómo detectar cuándo está disponible una conexión WIFI específica
  • Android: Simular WiFi en el emulador?
  • Problema al conectar la aplicación de Android al socket mediante la conexión de celda
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.