使用getBaseStationLatitude()/ Longitude()的CDMA安卓手机的手机信号塔位置

时间:2013-05-20 01:09:01

标签: java android cdma

我正在为CDMA手机开发一款Android应用程序,它将收集他们所连接的手机信号塔的纬度/经度。

首先:这甚至可能吗?

第二:我看过之前的posts,只是添加了“CellLocation.requestLocationUpdate();”但它没有任何效果。这是我正在尝试检索位置的代码部分......

CdmaCellLocation CdmaLocation = (CdmaCellLocation)telephonyManager.getCellLocation();
int Longitude = CdmaLocation.getBaseStationLongitude();
int Latitude = CdmaLocation.getBaseStationLatitude();

查看the code的CdmaCellLocation类会发现这些值默认为Integer.MAX_VALUE,但您如何实际设置纬度和经度?

1 个答案:

答案 0 :(得分:1)

您必须使用PhoneStateListenerLISTEN_CELL_LOCATION以及相应的回调函数onCellLocationChanged(CellLocation)LISTEN_CELL_INFO与回调函数onCellInfoChanged(List)和可能LISTEN_SIGNAL_STRENGHTS一起使用回调onSignalStrengthsChanged(Signal Strength)

退出从PhoneStateListener获取更改通知使用LISTEN_NONE

http://www.truiton.com/2014/08/android-phonestatelistener-example/

https://developer.android.com/reference/android/telephony/PhoneStateListener.html