【问题标题】:How to subscribe to providers status change events using Fused Location?如何使用 Fused Location 订阅提供者状态更改事件?
【发布时间】:2021-05-21 04:52:57
【问题描述】:
Google 建议使用FusedLocationProviderClient 而不是LocationManager
使用LocationManager我可以使用LocationListener接口订阅提供者的更改状态事件:
void onProviderEnabled(@NonNull String provider) {}
void onProviderDisabled(@NonNull String provider) {}
我怎样才能使用FusedLocationProviderClient?
【问题讨论】:
标签:
android
android-location
android-gps
android-fusedlocation
【解决方案1】:
所以回答我自己的问题。
对于FusedLocationProviderClient,我们使用LocationCallback,其中我们有下一个方法,我们可以与LocationManager一起使用来获取提供者的状态
override fun onLocationAvailability(LocationAvailability: LocationAvailability?) {
super.onLocationAvailability(LocationAvailability)
val isGpsProviderEnabled = locationManager.isProviderEnabled(LocationManager.GPS_PROVIDER)
val isNetProviderEnabled = locationManager.isProviderEnabled(LocationManager.NETWORK_PROVIDER)
}