GPS经纬度一直不会改变的解决方法

来源:互联网 发布:ubuntu创建root用户 编辑:程序博客网 时间:2024/04/30 15:21

客户要求我们的项目在登陆成功之后就启动GPS,于是我们就写了一个gpsthread(自定义)线程,用户登录成功之后就启动。第一次成功的获取了GPS经纬度信息之后,之后退出程序再登录重新启动GPS服务,发现GPS经纬度一点都没有改变,一开始还以为是因为距离太短了,没有超过设置的距离,所以GPS经纬度不会改变。随着项目进入收入尾声的阶段,再次检查GPS服务获取的经纬度信息,才发现获取的GPS经纬度一直都是相同的数值,也就是值完全没有改变。仔细查看代码,网上找了很多资料,发现跟我的代码都大同小异,为什么他们就行,我的就不行?很纳闷,后来发现

locationManager.requestLocationUpdates(provider, 1000, 2,

new LocationListener() {
public void onLocationChanged(Location location) {
updateWithNewLocation(location);
}


public void onProviderDisabled(String provider) {
updateWithNewLocation(null);
}


public void onProviderEnabled(String provider) {
}


public void onStatusChanged(String provider, int status,
Bundle extras) {
}


});

中的时间间隔太短了,于是就将上面代码中时间间隔设置为60000毫秒,也就是一分钟,再去测试,移动位置发现GPS经纬度有了改变。网上很多都是讲述1000毫秒或者2000毫秒,本人在真机测试时候发现第一次可以获取正确的经纬度信息,但是之后获取的GPS经纬度信息永远都跟第一次获取的经纬度数值一样,即使程序退出再运行,结果都是一样。我个人的意见就是时间间隔不要设置为1000毫秒,最好设置60000毫秒以上。

原创粉丝点击