permission_util.dart 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. import 'package:location/sdk/map/map_helper.dart';
  2. import 'package:permission_handler/permission_handler.dart';
  3. class PermissionUtil {
  4. PermissionUtil._();
  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. static Future<bool> checkPermission(Permission permission) async {
  41. final status = await permission.status;
  42. if (status.isGranted) {
  43. return true;
  44. } else {
  45. return false;
  46. }
  47. }
  48. static Future<bool> requestPermission(Permission permission) async {
  49. final status = await permission.request();
  50. if (status.isGranted) {
  51. return true;
  52. } else {
  53. return false;
  54. }
  55. }
  56. }