Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/180.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/40.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
位置管理器无法正确检测位置,即使我们在android中移动了数英里_Android - Fatal编程技术网

位置管理器无法正确检测位置,即使我们在android中移动了数英里

位置管理器无法正确检测位置,即使我们在android中移动了数英里,android,Android,在我的应用程序中,我必须获取当前位置。首先,它正确地获取位置。但我们正在从当前位置转移到其他位置。它显示以前的地址。它没有更新位置。我的代码是: locManager = (LocationManager)getSystemService(Context.LOCATION_SERVICE); locListener = new MyLocationListener(); locManager.requestLocationUpdates(LocationManager.GPS_PROVID

在我的应用程序中,我必须获取当前位置。首先,它正确地获取位置。但我们正在从当前位置转移到其他位置。它显示以前的地址。它没有更新位置。我的代码是:

locManager = (LocationManager)getSystemService(Context.LOCATION_SERVICE); 
locListener = new MyLocationListener();  
locManager.requestLocationUpdates(LocationManager.GPS_PROVIDER,0,0,locListener);
location = locManager.getLastKnownLocation(LocationManager.GPS_PROVIDER);
if(location != null)                                
{
    latitude = location.getLatitude();
longitude = location.getLongitude();
}  


//My location listener is as follows

public void onLocationChanged(Location loc) {
    if (loc != null) {
        //Toast.makeText(this.getBaseContext(), 
        //"Location changed : Lat: " + loc.getLatitude() + 
        //" Lng: " + loc.getLongitude(), 
        //Toast.LENGTH_LONG).show();
        double lat = loc.getLatitude();
        double lon = loc.getLongitude();
    }
}

public void onProviderDisabled(String provider) {
    // TODO Auto-generated method stub
}

public void onProviderEnabled(String provider) {
    // TODO Auto-generated method stub
}

public void onStatusChanged(String provider, int status, 
    Bundle extras) {
    // TODO Auto-generated method stub
}
请找出错误,当我第一次启动时,它不工作,而第二次启动时,它本身也在工作……因此请检查这件事……

尝试:

locManager.requestLocationUpdates(LocationManager.GPS_PROVIDER,2000,2,locListener);
这告诉它,如果自上次移动至少2米,则尝试每2秒报告一次。可以对0进行不同的处理

也许你手机的GPS有问题(有些手机因此而臭名昭著)。谷歌地图有什么问题吗

在代码中,还可以调用[myLocationManager.getBestProvider(new Criteria(),false)][1]

如果出现问题,这将返回GPS以外的内容。可能是网络提供的位置更准确

[1] :,布尔值)

尝试:

locManager.requestLocationUpdates(LocationManager.GPS_PROVIDER,2000,2,locListener);
这告诉它,如果自上次移动至少2米,则尝试每2秒报告一次。可以对0进行不同的处理

也许你手机的GPS有问题(有些手机因此而臭名昭著)。谷歌地图有什么问题吗

在代码中,还可以调用[myLocationManager.getBestProvider(new Criteria(),false)][1]

如果出现问题,这将返回GPS以外的内容。可能是网络提供的位置更准确


[1] :,布尔值)

先生,谢谢您的回复。请现在检查,因为我想在主文件中检索这些位置值。我不确定您在问什么。先生,谢谢您的回复。请现在检查,因为我想在主文件中检索这些位置值。我不确定您在问什么