当位置可用时,我想返回当前用户位置。
这是我的代码:
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,我为它设置了调试器,它从未出现在中
你能帮我吗?这个代码出了什么问题?
为什么要编写locationResult.lastLocation.latitude > 0
&代码中的locationResult.lastLocation.longitude > 0
?它们可以是负
您是否在某处调用了requestLocationUpdates?
fusedLocationClient.requestLocationUpdates(mLocationRequest, mLocationCallback, Looper.getMainLooper());