So finden Sie den Namen des Anbieters in Android heraus

78

Wie kann ich den Namen des Betreibers in Android herausfinden?

fhucho
quelle

Antworten:

132

Ich habe es nie selbst benutzt, aber schauen Sie sich TelephonyManager-> getNetworkOperatorName () an .

Sie könnten etwas so Einfaches wie dieses ausprobieren:

TelephonyManager manager = (TelephonyManager)context.getSystemService(Context.TELEPHONY_SERVICE);
String carrierName = manager.getNetworkOperatorName();
pableu
quelle
1
TelephonyManager telephonyManager = (TelephonyManager) getSystemService (Context.TELEPHONY_SERVICE);
Jemand irgendwo
1
Das Problem ist, dass der resultierende String nicht der in der Benachrichtigungsleiste geschriebene Träger ist. Beispielsweise werden MVNO nicht angezeigt.
Waza_Be
1
Benötigt dies eine spezielle Erlaubnis?
AlikElzin-Kilaka
4
@pableu Wenn ich Dual-Sim-Mobilgeräte verwende, wie kann ich dann den Namen beider Netzbetreiber erhalten?
Karthikeyan Ve
1
@ AlikElzin-kilaka gibt es eine manager.getSimOperatorName () -Methode. In der normalen Situation wird das gleiche Ergebnis zurückgegeben. aber es kann (und kann nicht, ich habe es nie getestet) ein anderes Ergebnis beim Roaming zurückgeben. Wenn Sie Bedenken haben, es noch schlimmer zu machen, versuchen Sie es.
Alireza A. Ahmadi
25
TelephonyManager telephonyManager = ((TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE));
String operatorName = telephonyManager.getNetworkOperatorName();
fhucho
quelle
Wie erkennt man einen Operator anhand einer 10-stelligen Telefonnummer?
Pankaj Nimgade
Wird in Brasilien nicht für mich arbeiten, kommt leer. Nur die "getSimOperatorName ()" -> "Claro BR"
Meszias
Der Netzwerkname ist verfügbar, wenn ein Netzwerk verfügbar ist und der Benutzer eine Sim für die Verbindung zum Internet ausgewählt hat. Getestet auf Android 7 Dual-Sim-Telefon und es gibt Namen nur in oben genannten Zustand zurück. Sogar getSimOperator () verhält sich zumindest auf meinem Testtelefon genauso.
Ankit
12

Für den Fall, dass der Carrier-Name des Betreibers benötigt wird, wie in der Benachrichtigungsleiste angezeigt, wie @Waza_Be gefragt hat. Man könnte stattdessen die Methode getSimOperatorName verwenden, da mehrere Telekommunikationsunternehmen ihr Netzwerk an andere Unternehmen untervermieten.

TelephonyManager telephonyManager = ((TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE));
String simOperatorName = telephonyManager.getSimOperatorName();
velval
quelle
1
es retursn primären SIM - Operator fr Dual - SIM - ..wie beide ops bekommen für die SIM
Srishti Roy
2
Hallo @SrishtiRoy, es scheint, dass das, was Sie brauchen, nur auf API-Level 22 und höher unterstützt wird. Überprüfen Sie die Kommentare zur akzeptierten Antwort hier : . Android docs hier
velval