【发布时间】:2021-03-22 13:26:04
【问题描述】:
我尝试使用 Flutter location 包单击按钮时获取用户位置
代码
FloatingActionButton(
onPressed: () async {
await location
.hasPermission()
.then((PermissionStatus status) async {
if (_permissionGranted == PermissionStatus.denied) {
await location.requestPermission().then(
(PermissionStatus requestStatus) async {
print("PERMISSION TAKEN");
await location
.getLocation()
.then((LocationData userLocation) {
print("LOCATION TAKEN 1");
print(userLocation);
});
},
);
} else {
await location
.getLocation()
.then((LocationData userLocation) {
print("LOCATION TAKEN 2");
print(userLocation);
});
}
});
},
child: Icon(Icons.place, color: Colors.white),
backgroundColor: Colors.green,
),
当用户单击按钮请求位置权限时,在我的代码中授予权限后工作我的代码的这部分
print("PERMISSION TAKEN");
但是这部分代码不能工作
await location
.getLocation()
.then((LocationData userLocation) {
print("LOCATION TAKEN 1");
print(userLocation);
});
【问题讨论】:
-
您在什么平台上测试 ios 或 android ? iOS 模拟器中目前存在一个错误,您必须手动选择多个位置才能让模拟器实际发送数据。在 iOS 模拟器中测试时请记住这一点。
标签: flutter dart flutter-dependencies