检查位置权限是否启用



当用户从设置屏幕返回以检查位置权限是否启用时,我使用以下代码来检查位置权限的状态。

checkPermission() async {
bool isLocationEnabled = await Geolocator().isLocationServiceEnabled();
if (isLocationEnabled) {
print("enable");
} else {
print("not enable");
}
}

通过以下代码将用户导航到设置屏幕:PermissionHandler().openAppSettings();

但问题是,无论位置权限是由用户禁用还是启用,locationserviceenable总是正确的。

您应该使用此方法(您可以在此处查看文档(:

bool isLocationEnabled = await _locationService.serviceEnabled();

扑动文件上写着:

serviceEnabled((:返回一个布尔值,以了解定位服务是否已启用或用户是否手动将其停用。

有关更多信息,您可以查看此示例。

最新更新