validar - ¿Cómo detectar la disponibilidad de la función de punto de acceso móvil en Android mediante programación?
validar si tengo internet android studio (4)
Espero que el título en sí diga cuál es mi pregunta ...
Por ejemplo, podemos verificar la disponibilidad de Wifi con PackageManager como
packageManager.hasSystemFeature(PackageManager.FEATURE_WIFI);
Del mismo modo, ¿existe alguna forma de detectar la disponibilidad de la función de punto de acceso móvil en Android mediante programación?
Gracias.
Es quizás el primer paso para la solución.
Pasé por la documentación de Google y descubrí que si wifi P2P es compatible con el dispositivo, entonces es obvio que soporta wifi hotspot.
para verificar Wi-Fi Direct / wifi P2P por dispositivo luego marque de esta manera
PackageManager m = getPackageManager();
if (!m.hasSystemFeature(PackageManager.FEATURE_WIFI_DIRECT)) {
// This device does support wifi P2P
}
pero Google dice que es mejor verificar esta compatibilidad en su propio receptor de difusión de esta manera
@Override
public void onReceive(Context context, Intent intent) {
...
String action = intent.getAction();
if (WifiP2pManager.WIFI_P2P_STATE_CHANGED_ACTION.equals(action)) {
int state = intent.getIntExtra(WifiP2pManager.EXTRA_WIFI_STATE, -1);
if (state == WifiP2pManager.WIFI_P2P_STATE_ENABLED) {
// Wifi P2P is enabled
} else {
// Wi-Fi P2P is not enabled
}
}
...
}
compruebe la documentación de google para el mismo
Puede acceder a esta información llamando a ConnectivityManager.isActiveNetworkMetered()
.
Esto devolverá si la conexión activa es un punto de acceso (como se define en Uso de datos -> Puntos de acceso móviles).
Aquí hay una buena respuesta a una pregunta similar !!! ¿Cómo detectar si una red está (configurada como) un punto de acceso móvil en Android?
Puede verificar esto llamando a este: ConnectivityManager.isActiveNetworkMetered()
Esto devolverá la conexión activa actual en Wifi Hotspot o no.
Creo que es un poco útil para ti.