verify_permissions.dart 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. import 'package:flutter/material.dart';
  2. import 'package:get/get.dart';
  3. import 'package:vitalapp/components/alert_dialog.dart';
  4. import 'package:vitalapp/managers/interfaces/permission.dart';
  5. abstract class VerifyPermissions {
  6. static Future<bool> verifyCameraPermissions() async {
  7. IPermissionManager permissionManager = Get.find<IPermissionManager>();
  8. var isCameraPermissions =
  9. await permissionManager.requestCameraPermissions();
  10. if (!isCameraPermissions) {
  11. await Get.dialog(
  12. VAlertDialog(
  13. title: "提示",
  14. width: 420,
  15. content: Container(
  16. height: 32,
  17. padding: const EdgeInsets.symmetric(horizontal: 24),
  18. alignment: Alignment.center,
  19. child: const Text(
  20. "未授予相机权限,前去设置",
  21. style: TextStyle(fontSize: 20),
  22. ),
  23. ),
  24. showCancel: false,
  25. onConfirm: () async {
  26. Get.back();
  27. await permissionManager.openAppSettingsAsync();
  28. },
  29. ),
  30. barrierDismissible: false,
  31. barrierColor: Colors.black.withOpacity(.4),
  32. );
  33. }
  34. return isCameraPermissions;
  35. }
  36. }