首页 > 解决方案 > 如何使用 Fused Location 订阅提供者状态更改事件?

问题描述

谷歌建议使用FusedLocationProviderClient而不是LocationManager

使用我可以通过使用接口LocationManager订阅更改提供者的状态事件:LocationListener

void onProviderEnabled(@NonNull String provider) {}
void onProviderDisabled(@NonNull String provider) {}

我该怎么做FusedLocationProviderClient

标签: androidandroid-locationandroid-gpsandroid-fusedlocation

解决方案


所以回答我自己的问题。

因为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)
}

推荐阅读