当前位置: 代码迷 >> Android >> 基于网络定位的有关问题
  详细解决方案

基于网络定位的有关问题

热度:51   发布时间:2016-05-01 17:30:26.0
基于网络定位的问题
想实现一个定位的功能,用GPS可以实现了,但是使用网络来定位却遇到了一点问题.
先贴代码:
Java code
private LocationManager locationManager;locationManager = (LocationManager) getSystemService(LOCATION_SERVICE);[color=#FF0000]if(!locationManager.isProviderEnabled(LocationManager.NETWORK_PROVIDER)){[/color]   ......}Location location = locationManager.getLastKnownLocation(LocationManager.NETWORK_PROVIDER);locationManager.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 1000, 0, this);


运行到isProviderEnabled方法是总是返回false,即使我把gprs,gps,wifi都打开了还是如此.
而且运行后总是会调用LocationListener的public void onProviderDisabled(String provider) 方法,并没有调用public void onLocationChanged(Location location)方法

有人知道原因吗?

非常感谢!

------解决方案--------------------
加行这个试试
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
------解决方案--------------------
探讨

引用:

加行这个试试
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />

加了还是不行,郁闷了...

------解决方案--------------------
isProviderEnabled(LocationManager.GPS_PROVIDER)
你有没有试过?
------解决方案--------------------
locationManager.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 1000, 0, this);这块设置成了只使用基站定位,你设置成GPS定位试试
------解决方案--------------------
网络定位分基站和WIFI,如果在同一个基站的范围,定位数据肯定一样,WIFI也类似
------解决方案--------------------
Java code
public void onProviderDisabled(String provider)
------解决方案--------------------
在一个网络定位是手机GPRS定位,是从google服务器取得的gson数据,定位包括,gps定位,基站定位,网络定位的
------解决方案--------------------
你可以用
locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
locationManager.getProviders(true),
去看看返回的list中有没有LocationManager.NETWORK_PROVIDER,
  相关解决方案