如何使用 Fused Location 订阅提供者状态更改事件?
Posted
技术标签:
【中文标题】如何使用 Fused Location 订阅提供者状态更改事件?【英文标题】:How to subscribe to providers status change events using Fused Location? 【发布时间】:2021-05-21 04:52:57 【问题描述】:Google 建议使用FusedLocationProviderClient
而不是LocationManager
使用LocationManager
我可以使用LocationListener
接口订阅提供者的更改状态事件:
void onProviderEnabled(@NonNull String provider)
void onProviderDisabled(@NonNull String provider)
我怎样才能使用FusedLocationProviderClient
?
【问题讨论】:
【参考方案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)
【讨论】:
以上是关于如何使用 Fused Location 订阅提供者状态更改事件?的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Service 类中使用 Fused Location Provider?
如何使用 FUSED LOCATION API 优化电池 - Android
如何使用网络在Android中使用Fused Location Provider获取位置?