2

I know about TelephonyManager.getNeighboringCellInfo()

List<NeighboringCellInfo> NeighboringList = tm.getNeighboringCellInfo();

I have AT&T. Is there a method for getting cell tower data for towers of all providers (T-mobile, Verizon etc) in range?

Bruce
  • 33,927
  • 76
  • 174
  • 262
  • 1
    I doubt you can get towers for another technology. An AT&T GSM phone won't know a thing about CDMA towers from Verizon, for example, because its chipset simply doesn't speak that technology. – CommonsWare Mar 21 '12 at 00:27

2 Answers2

1

It depends not only the particular bands, but also the various "carrier arrangements". For example, with both Sprint and Verizon CDMA, the PRL data send to the phone tells the phone what networks are to be used where. Even if you have six towers around you, and, all of those towers happened to use CDMA in the correct band, your PRL might still ignore them.
As an example, where I live, we have Metro PCS, Sprint and Verizon. However, at least where I live, Sprint likes to turn their towers up to 11. That might sound like a good idea, but anyone in radio will tell you, more power often makes for worse connections. Verizon actually has to avoid using Sprint and Metro in my area even if the strong signal normally would be preferable. Without it, I'd "auto roam" to Sprint every time.

user500123
  • 617
  • 6
  • 14
1

Not unless your cellular device has multiple antennas. (And not "bands")

Verizon / Sprint = Noncompatible CDMA networks. AT+T / T-mo = Compatible GSM networks.

The best you'll be able to do with an AT+T device is possibly get T-Mobile cell towers if roaming is enabled on your service plan and you're able to authenticate to the towers. (For example, many prepaid devices are disallowed from roam and dont even see out of network [but compatible] towers)

Lucifer
  • 29,392
  • 25
  • 90
  • 143
Eric
  • 1,953
  • 4
  • 24
  • 33