LocationServices getFusedLocationProviderClient не работает - PullRequest
0 голосов
/ 14 марта 2020

Я хочу вернуть текущее местоположение пользователя, когда местоположение доступно.

это мой код:

fusedLocationClient = LocationServices.getFusedLocationProviderClient(this)
    locationCallback = object : LocationCallback() {
        override fun onLocationResult(locationResult: LocationResult) {
            super.onLocationResult(locationResult)
            if (locationResult.lastLocation != null && locationResult.lastLocation.latitude > 0 && locationResult.lastLocation.longitude > 0) {

                lastLocation = locationResult.lastLocation
                currentUserLatLng = LatLng(lastLocation.latitude, lastLocation.longitude)

                fusedLocationClient.removeLocationUpdates(locationCallback)

            }
        }
    }

проблема в том, что он никогда не вызывается, у меня есть разрешение и я разрешаю своему приложению использовать gps, я установил для него отладчик, и он никогда не приходит в

не могли бы вы мне помочь? что не так с этим кодом?

Ответы [ 2 ]

0 голосов
/ 14 марта 2020

Вы когда-нибудь вызывали requestLocationUpdates?

fusedLocationClient.requestLocationUpdates(mLocationRequest, mLocationCallback, Looper.getMainLooper());
0 голосов
/ 14 марта 2020

Почему вы написали locationResult.lastLocation.latitude > 0 & locationResult.lastLocation.longitude > 0 в своем коде? Они могут быть отрицательными

...