Cómo averiguar el nombre del operador en Android


78

¿Cómo puedo averiguar el nombre del operador en Android?

Respuestas:


132

Nunca lo usé yo mismo, pero eche un vistazo a TelephonyManager-> getNetworkOperatorName () .

Podrías probar algo tan simple como esto:

TelephonyManager manager = (TelephonyManager)context.getSystemService(Context.TELEPHONY_SERVICE);
String carrierName = manager.getNetworkOperatorName();

1
TelephonyManager telephonyManager = (TelephonyManager) getSystemService (Context.TELEPHONY_SERVICE);
Alguien en algún lugar

1
El problema es que la cadena resultante no es el operador escrito en la barra de notificaciones. Por ejemplo, no se muestran los MVNO.
Waza_Be

1
¿Requiere esto un permiso específico?
AlikElzin-kilaka

4
@pableu si estoy usando medios móviles de doble SIM, ¿cómo puedo obtener el nombre de ambos operadores?
Karthikeyan Ve

1
@ AlikElzin-kilaka hay un método manager.getSimOperatorName (). Devuelve el mismo resultado en una situación normal. pero puede (y puede que no, nunca lo probé) devolver un resultado diferente en roaming. Si te preocupa la itinerancia, es peor intentarlo.
Alireza A. Ahmadi

25
TelephonyManager telephonyManager = ((TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE));
String operatorName = telephonyManager.getNetworkOperatorName();

¿Cómo detectar un operador a partir de un número de teléfono de 10 dígitos?
Pankaj Nimgade

No funcionará para mí en Brasil, viene vacío. Solo el "getSimOperatorName ()" -> "Claro BR"
meszias

El nombre de la red está disponible si hay una red disponible junto con el usuario que ha seleccionado la SIM para conectarse a Internet. Probé esto en el teléfono Android 7 dual sim y devuelve el nombre solo en la condición anterior. Incluso getSimOperator () se comporta de la misma manera al menos en mi teléfono de prueba.
Ankit

12

En caso de que se necesite el nombre del operador del operador como se muestra en la barra de notificaciones como @Waza_Be preguntó. En su lugar, se podría utilizar el método getSimOperatorName , ya que varias empresas de telecomunicaciones subarrendan su red a otras empresas.

TelephonyManager telephonyManager = ((TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE));
String simOperatorName = telephonyManager.getSimOperatorName();

1
devuelve el operador de sim primario fr dual sim .. cómo obtener operaciones para ambos sim
Srishti Roy

2
Hola @SrishtiRoy, parece que lo que necesitas solo es compatible con el nivel de API 22 y superior. Compruebe los comentarios sobre la respuesta aceptada aquí: .
Documentos de
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.