Android 4.2.2 Wifi-Direct adhoc network – acceder a métodos ocultos android para establecer el SSID y contraseña?

He configurado correctamente un grupo peer-to-peer Wifi-Direct de Android usando el método "createGroup ()" de WifiP2pManager. Mi dispositivo Android (4.2.2) está configurado como propietario del grupo. Ahora necesito fijar el SSID y la frase de paso para la comunicación del adhoc con un dispositivo peer heredado del wifi que quisiera conectar con.

Android parece configurar un SSID y una frase de contraseña por defecto y puedo leer estos valores usando los métodos "getNetworkname ()" y "getPassphrase ()" de WifiP2pGroup. Podría usar estos valores, pero en su lugar, quiero establecer los valores dinámicamente en mi código para que coincida con los valores del dispositivo wifi heredado al que me gustaría conectar.

Si miras a través del código de Android para el WifiP2pGroup, que aparece en:

Http://android.googlesource.com/platform/frameworks/base/+/cd92588/wifi/java/android/net/wifi/p2p/WifiP2pGroup.java

Puede ver que los métodos públicos "setNetworkName ()" y "setPassphrase ()" sí existen. Pero si intento referirme a estos métodos dentro del código java en mi dispositivo Android, obtendré los mensajes de error:

"El método setNetworkName (String) no está definido para el tipo WifiP2pGroup", y

Msgstr "El método setPassphrase (String) no está definido para el tipo WifiP2pGroup".

Mi pregunta es: ¿cómo puedo acceder a estos métodos ocultos que existen dentro del sistema operativo Android 4.2.2 como métodos públicos de theWifiP2pGroup?

¿Hay alguna otra forma de establecer el SSID y la frase de contraseña aparte de usar estos métodos?

Además, ¿por qué optaron por ocultar estos métodos, y sabrían si estarán disponibles en una futura versión de Android? Si es así, ¿qué versión?

Gracias por cualquier ayuda que usted pueda proporcionar.

2 Solutions collect form web for “Android 4.2.2 Wifi-Direct adhoc network – acceder a métodos ocultos android para establecer el SSID y contraseña?”

Puede utilizar la reflexión java.

Supongamos que WifiP2pGroup agrupa su objeto actual.

Método setPassPhraseMethod = group.getClass (). GetMethod ("setPassphrase", nueva Clase [{String.class}); Y ahora invoca el método:

SetPassPhraseMethod.invoke (grupo, "yourNewPassPrhase");

Sólo puede utilizar las API expuestas en WifiP2pManager http://developer.android.com/reference/android/net/wifi/p2p/WifiP2pManager.html

Las API a las que se está refiriendo son API internas para recrear grupos persistentes.

  • ¿Puedo cambiar el propietario del grupo en un grupo persistente en Wi-Fi Direct?
  • El descubrimiento del servicio P2P Wifi funciona intermitentemente
  • El estado de WifiP2pDevice permanece en INVITADO después de la invitación directa de Wifi
  • ¿Es posible conectar dos o más grupos WiFi Direct?
  • Conecta Raspberry con Android a través de servicios Wifi Direct (p2p)
  • Cómo alcanzar la exhibición del wifi después de conectar por el wifi directo
  • ¿Es posible la multidifusión con Wi-Fi Direct?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.