- лямбда-функция отказывается обновлять значение до фактических координат (функции действительно удается получить местоположение, потому что, если я раскомментирую эту строку с помощью журнала, она действительно опубликует некоторые координаты)
- По возможности избегайте использования лямбда-функции (решаемая проблема 1 имеет приоритет над этой)
Код: Выделить всё
fun getLatLongString(location: Location?): String {
val latitude = location?.latitude
val longitude = location?.longitude
return "Latitude: $latitude, Longitude: $longitude"
}
// @SuppressLint("MissingPermission")
fun getLocation():String {
var please = "no location"
val task: Task = fusedLocationClient.lastLocation
task.addOnSuccessListener { location: Location? -> String
if (location != null) {
var latLongString:String = getLatLongString(location)
please = latLongString
//Log.i("I", "Location $please")
}else{
please = "location not working"
Log.i("I", "Location not found")
}
}
return please
}
Любая помощь будет принята с благодарностью !!
P.S. в строке объявления задачи есть ошибка, но эта ошибка связана с отсутствием разрешений, которые я обработал где-то еще.
Подробнее здесь: https://stackoverflow.com/questions/792 ... expression