Вопрос Kotlin Coroutines ... борется с использованием свойства вместо функции, являющейся аксессором асинхронного вызова.
Справочная информация - я пытаюсь использовать FusedLocationProviderClient
с kotlinx-coroutines-play-services
библиотека для использования метода .await()
в Task
вместо добавления обратных вызовов ...
В настоящее время имеется метод получения свойства, исключающий функцию приостановки, но не уверенный в том, как правильно запустить сопрограммуво избежание
необходимая единица обнаружена XYZ
ошибка ...
val lastUserLatLng: LatLng?
get() {
val location = lastUserLocation
return if (location != null) {
LatLng(location.latitude, location.longitude)
} else {
null
}
}
val lastUserLocation: Location?
get() {
GlobalScope.launch {
return@launch getLastUserLocationAsync() <--- ERROR HERE
}
}
private suspend fun getLastUserLocationAsync() : Location? = withContext(Dispatchers.Main) {
return@withContext if (enabled) fusedLocationClient.lastLocation.await() else null
}
Есть мысли о том, как с этим справиться?