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.

  • Wi-Fi Directo y "normal" Wi-Fi - ¿Diferentes MAC?
  • ¿Por qué Android Wi-Fi Direct solo devuelve un servicio a la vez con discoverServices?
  • ¿Cómo cambiar el nombre del dispositivo en WiFi p2p directo?
  • ¿Existe un equivalente de Wi-Fi Direct / Wi-Fi P2P para Phonegap / Cordova?
  • cómo encontrar la dirección del dispositivo cliente wifip2p?
  • El estado de WifiP2pDevice permanece en INVITADO después de la invitación directa de Wifi
  • Wifi-Direct siempre se desconecta después de treinta minutos
  • El descubrimiento del servicio P2P Wifi funciona intermitentemente
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.