Как узнать имя перевозчика при использовании MVNO? (я хочу тот, который написан в панели уведомлений)
Я просто пытаюсь получить свое имя перевозчика.
Проблема при попытке использовать:
TelephonyManager manager = (TelephonyManager)context.getSystemService(Context.TELEPHONY_SERVICE));
String carrierName = manager.getNetworkOperatorName();
Это прекрасно работает, если вы не MVNO (определение здесь: http://en.wikipedia.org/wiki/Mobile_virtual_network_operator)
Например, в Бельгии у нас есть "базовый" оператор, который арендует сеть для некоторых MVNO, таких как Toledo, Allo RTL, мобильные викинги и т. Д.
В моей панели уведомлений, когда я использую такие виртуальные операторы, я получаю их настоящие имена, но приведенный выше код просто дает мне "Base" как String, а не тот, который я хочу.
Я надеюсь, вы понимаете, о чем я.
1 ответ
У меня нет SIM-карты MVNO, но getSimOperatorName()
метод TelephonyManager
может быть метод, который вы ищете.
TelephonyManager manager = (TelephonyManager)context.getSystemService(Context.TELEPHONY_SERVICE);
String carrierName = manager.geSimOperatorName();
У меня есть SIM-карта MVNE в Германии, и метод возвращает пустую строку, но getNetworkOperatorName()
Метод возвращает нужного оператора для моей сим-карты.