Anclaje a red USB de Android: cómo engañar a las aplicaciones


18

Conexión inversa USB = El teléfono celular obtiene conexión de red desde la PC a través de USB.

Sé cómo hacer un anclaje inverso USB, excepto por un problema: muchas aplicaciones de Android comprobarán la conexión de red utilizando el código a continuación antes de realizar cualquier trabajo útil:

ConnectivityManager connectivityManager = (ConnectivityManager)context.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo info = connectivityManager.getActiveNetworkInfo();

El problema es que, cuando se usa el anclaje inverso USB, el código anterior informará que no hay conexión de red. Sin embargo, hay una conexión de red (que es el enlace USB inverso), y ping, wget y todos los programas que no realizan esta estúpida verificación funcionan bien.

Entonces, la pregunta es: ¿cómo puedo hackear el sistema para permitir que esta verificación de conexión de red regrese con éxito (para poder engañar a estas aplicaciones)?

Por cierto. Uso Cyanogenmod 7. Y cualquier solución específica para este MOD también es bienvenida.


Esta pregunta trata el mismo problema que android.stackexchange.com/questions/11728/…
Flow

Tony Beta Lambda publicó una solución válida: debería considerar aceptarla.
Michaël

Respuestas:



9

Yo diría que solo hay soluciones específicas para Mod. Casi todas las aplicaciones que conozco utilizan esta API de Android y, por lo tanto, el código recortado en sus preguntas, para las comprobaciones de conectividad de red.

Debería cambiar la fuente de Cyanogen para que el sistema operativo (Android + Cyanogen) conozca la conectividad de la red de anclaje inverso USB y devuelva la información correcta a la aplicación que solicita el estado actual de la red. No creo que esto se pueda hacer con una capa artificial entre la API y la aplicación que "engaña" a la aplicación. Es más realista que Cyanogen implemente el manejo del anclaje inverso imitando una conexión WiFi activa. Debe pedirles que aborden este tema. Tal vez en el futuro Android tenga soporte oficial para el anclaje inverso. :)

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.