12

I'm trying to get a list of the available cellular network providers. Unfortunately I can't find any service or class that might help me out. Does anyone have an idea on how to manage this? It has to be possible since you can see the list when you go to the settings on your Android device.

Bill the Lizard
  • 398,270
  • 210
  • 566
  • 880
Goddchen
  • 4,459
  • 4
  • 33
  • 54

1 Answers1

10

Since Android is open source I had a look at the sources and finally found something called INetworkQueryService. I guess you can do the same as the android settings implementation and interact with this service: Some guidance through NetworkSettings.java:

  • onCreate starts the NetworkQueryService and binds it
  • loadNetworksList() tells the service to query for network operators
  • INetworkQueryServiceCallback is evalutated and if the event "EVENT_NETWORK_SCAN_COMPLETED" was raised, networksListLoaded will be called to iterate over the available Networks
Calvin
  • 617
  • 1
  • 12
  • 34
tobsen
  • 5,328
  • 3
  • 34
  • 51