如何使用位置监听器?

时间:2017-02-13 02:45:20

标签: android location android-gps

我不清楚如何使用位置监听器。

我这样做:

public Location actualLocation;

private class mLocationListener implements LocationListener {

    public void onLocationChanged(Location location) {
        actualLocation = location;
    }

    public void onStatusChanged(String s, int i, Bundle b) {
    }

    public void onProviderDisabled(String s) {
    }

    public void onProviderEnabled(String s) {
    }
}

//Middle of code
currentLatitude = actualLocation.getLatitude()
currentLongitude = actualLocation.getLongitude()

或者这个:

public Location actualLocation;

private class mLocationListener implements LocationListener {

    public void onLocationChanged(Location location) {
    }

    public void onStatusChanged(String s, int i, Bundle b) {
    }

    public void onProviderDisabled(String s) {
    }

    public void onProviderEnabled(String s) {
    }
}

//Middle of code
actualLocation = mLocationManager.getLastKnownLocation(LocationManager.GPS_PROVIDER);

currentLatitude = actualLocation.getLatitude()
currentLongitude = actualLocation.getLongitude()

使用的变量未在此代码段中声明。这是故意的。为简单起见,我缩短了代码。

更新 我的问题是:¿我是否使用getLastKnow位置或每次运行时手动保存位置是否更新? ¿会有同样的效果吗?

1 个答案:

答案 0 :(得分:0)

您需要调用LocationManager.registerLocationUpdates。将LocationListener传递给该调用,只要具有新位置,框架就会调用这些函数。