Як дізнатись ім’я оператора в Android


78

Як я можу дізнатись ім'я оператора в Android?

Відповіді:


132

Ніколи не використовував його сам, але подивіться на TelephonyManager-> getNetworkOperatorName () .

Ви можете спробувати щось таке просте, як це:

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

1
TelephonyManager telephonyManager = (TelephonyManager) getSystemService (Context.TELEPHONY_SERVICE);
Хтось десь

1
Проблема полягає в тому, що отриманий рядок не є носієм, записаним у панелі сповіщень .. Наприклад, MVNO не відображаються.
Waza_Be

1
Чи потрібен для цього конкретний дозвіл?
AlikElzin-kilaka

4
@pableu, якщо я використовую мобільні засоби dual sim, як я можу отримати ім'я обох операторів?
Картікеян Ве

1
@ AlikElzin-kilaka існує метод manager.getSimOperatorName (). Він повертає той самий результат у звичайній ситуації. але це може (а може і ні, я ніколи не тестував) повернути різні результати в роумінгу. Якщо вас турбує роумінг, гірше спробувати.
Аліреза А. Ахмаді,

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

як виявити оператора з 10-значного номера телефону?
Pankaj Nimgade 03.03.15

Не буде працювати для мене в Бразилії, приходить порожнім. Тільки "getSimOperatorName ()" -> "Claro BR"
meszias

Назва мережі доступна, якщо є мережа, доступна разом із користувачем, який вибрав SIM-карту для підключення до Інтернету. Перевірено на подвійному SIM-телефоні Android 7, і він повертає назву лише у вищевказаному стані. Навіть getSimOperator () поводиться так само принаймні на моєму тестовому телефоні.
Анкіта

12

Якщо вам потрібно ім’я оператора оператора, як показано на панелі сповіщень, як запитував @Waza_Be. Натомість можна було б використовувати метод getSimOperatorName , оскільки кілька телекомунікаційних компаній передають свою мережу в суборенду іншим компаніям.

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

1
він повертає первинного оператора sim з подвійного sim .. як отримати операційні системи для обох sim
Srishti Roy

2
Привіт @SrishtiRoy, здається, те, що вам потрібно, підтримується лише на рівні API 22 і вище. Перевірте коментарі на загальноприйнятому відповідь тут: . Документи для Android тут
velval
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.