权限处理程序 - 位置不起作用(Flutter)
Permisson handler - location do not work (Flutter)
我在尝试使用位置时遇到权限处理程序问题。
当我点击 运行 gps func 时,一切似乎都很好。出现弹出窗口,我可以选择选项 - 允许、使用时允许等,但是当我选择允许或允许时它不打开位置。它工作得很好,只是不知何故停止了(权限设置为授予)。
当我手动打开它时(在我的设备上的位置),一切都像以前一样。我现在不明白为什么这个提示停止打开定位服务。
void _onGpsTap() async {
bloc.emitEvent(DisplayProgressIndicator());
try {
permissionStatus = await Permission.location.status;
if (permissionStatus.isUndetermined) {
permissionStatus = await Permission.location.request(); // Here I'm asking for turning location on
}
if (permissionStatus.isDenied) {...
我正在使用
geolocator: ^5.3.1
permission_handler: 5.0.0+hotfix.3
试试下面的代码:-
var status = await Permission.location.request();
if(status.isGranted){
log("Permission Granted");
getAddress();
}
getAddress() async {
Position position = await Geolocator.getCurrentPosition(desiredAccuracy: LocationAccuracy.high);
latitude = position.latitude;
longitude = position.longitude;
if(latitude != null && longitude != null){
apiCall();
}
}
permission_handler: ^8.1.4+2
geolocator: ^7.2.0+1
我发现无法通过 开启定位服务。颤动,用户必须手动操作。
我在尝试使用位置时遇到权限处理程序问题。
当我点击 运行 gps func 时,一切似乎都很好。出现弹出窗口,我可以选择选项 - 允许、使用时允许等,但是当我选择允许或允许时它不打开位置。它工作得很好,只是不知何故停止了(权限设置为授予)。
当我手动打开它时(在我的设备上的位置),一切都像以前一样。我现在不明白为什么这个提示停止打开定位服务。
void _onGpsTap() async {
bloc.emitEvent(DisplayProgressIndicator());
try {
permissionStatus = await Permission.location.status;
if (permissionStatus.isUndetermined) {
permissionStatus = await Permission.location.request(); // Here I'm asking for turning location on
}
if (permissionStatus.isDenied) {...
我正在使用
geolocator: ^5.3.1
permission_handler: 5.0.0+hotfix.3
试试下面的代码:-
var status = await Permission.location.request();
if(status.isGranted){
log("Permission Granted");
getAddress();
}
getAddress() async {
Position position = await Geolocator.getCurrentPosition(desiredAccuracy: LocationAccuracy.high);
latitude = position.latitude;
longitude = position.longitude;
if(latitude != null && longitude != null){
apiCall();
}
}
permission_handler: ^8.1.4+2
geolocator: ^7.2.0+1
我发现无法通过 开启定位服务。颤动,用户必须手动操作。