¿Alguien sabe cómo obtener información de la red celular en una aplicación de Android (proyecto de Android Studio)?

¿Qué tipo de información celular?

Lea la documentación aquí TelephonyManager | Desarrolladores de Android

Suponiendo que desea el tipo de red:

// Verifica cada tipo de conexión
conexión booleana Disponible = falso;
ConnectivityManager cm = (ConnectivityManager) getSystemService (Context.CONNECTIVITY_SERVICE);

/ **
* WIFI
* /

/ ** Comprueba la conexión ** /
NetworkInfo network = cm.getNetworkInfo (ConnectivityManager.TYPE_WIFI);

// Asegúrese de que la red esté disponible
if (network! = null && network.isAvailable () && network.isConnectedOrConnecting ()) {
connectionAvailable = true;
}

/ **
* 2G / 3G
* /
/ ** Comprueba la conexión ** /
red = cm.getNetworkInfo (ConnectivityManager.TYPE_MOBILE);

// Muestra el ícono correcto
if (red! = nulo &&
(network.getSubtype () == TelephonyManager.NETWORK_TYPE_GPRS ||
network.getSubtype () == TelephonyManager.NETWORK_TYPE_EDGE)) {
// 2G
}
más {
// 3G
}

// Asegúrese de que la red esté disponible
if (network.isAvailable () && network.isConnectedOrConnecting ()) {
connectionAvailable = true;
}

/ **
* 4G
* /

/ ** Comprueba la conexión ** /
red = cm.getNetworkInfo (ConnectivityManager.TYPE_WIMAX);

// Asegúrese de que la red esté disponible
if (network! = null && network.isAvailable () && network.isConnectedOrConnecting ()) {
connectionAvailable = true;
}

O por número de teléfono celular, intente a continuación llamando al administrador de telefonía api:

TelephonyManager tm = (TelephonyManager) getSystemService (TELEPHONY_SERVICE);
Cadena phoneNumber = tm.getLine1Number ();