我的代码putput总是放在其他部分。 IT表示{location}为空。

有什么建议么?

locManager = (LocationManager)getSystemService(Context.LOCATION_SERVICE);
locManager.requestLocationUpdates(LocationManager.GPS_PROVIDER,0,0, locationListener);
location = locManager.getLastKnownLocation(LocationManager.GPS_PROVIDER);

            if(location != null)
            {
        double latitude = location.getLatitude();
        double longitude = location.getLongitude();

            }  else {
                //
            }
.....
.....
....

最佳答案

如果locManager.getLastKnownLocation(LocationManager.GPS_PROVIDER)返回null,则表示您从未找到过。

如果要获取新位置,则应使您的活动扩展LocationListener接口并实现以下内容。

public void onLocationChanged(Location location) {
    // Code to execute after being located
}

public void onProviderDisabled(String provider) {

}

public void onProviderEnabled(String provider) {

}

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

}


不要忘记随后删除位置更新。

关于java - 找不到用户位置:-Android中的经度和纬度,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7308313/

10-13 03:02