location_permission_util.dart 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. import 'package:location/sdk/map/map_helper.dart';
  2. import 'package:permission_handler/permission_handler.dart';
  3. class LocationPermissionUtil {
  4. LocationPermissionUtil._();
  5. static Future<bool> requestLocationPermission() async {
  6. final status = await Permission.locationWhenInUse.request();
  7. if (status.isGranted) {
  8. MapHelper.startLocation();
  9. return true;
  10. } else {
  11. return false;
  12. }
  13. }
  14. static Future<bool> checkLocationPermission() async {
  15. final status = await Permission.locationWhenInUse.status;
  16. if (status.isGranted) {
  17. return true;
  18. }
  19. {
  20. return false;
  21. }
  22. }
  23. static Future<bool> requestShowLocationAlways() async {
  24. final status = await Permission.locationAlways.request();
  25. if (status.isGranted) {
  26. MapHelper.startLocation();
  27. return true;
  28. } else {
  29. return false;
  30. }
  31. }
  32. static Future<bool> checkShowLocationAlways() async {
  33. final status = await Permission.locationAlways.status;
  34. if (status.isGranted) {
  35. return true;
  36. } else {
  37. return false;
  38. }
  39. }
  40. }