WGShare.Mobile.Flutter/wgshare/lib/utils/permission/IosPermissionHandler.dart

74 lines
2.3 KiB
Dart

import 'package:permission_handler/permission_handler.dart';
class IosPermissionHandler {
Future<void> requestAllPermissions() async {
await requestLocationPermission();
await requestBluetoothPermission();
await requestCameraPermission();
await requestStoragePermission();
await requestNotificationPermission();
await requestPhonePermission();
}
Future<void> requestLocationPermission() async {
PermissionStatus status = await Permission.location.request();
if (status.isGranted) {
print("iOS: 位置权限已授予");
} else if (status.isPermanentlyDenied) {
print("iOS: 位置权限被永久拒绝,请前往设置开启");
} else {
print("iOS: 位置权限被拒绝");
}
}
Future<void> requestBluetoothPermission() async {
PermissionStatus status = await Permission.bluetooth.request();
if (status.isGranted) {
print("iOS: 蓝牙权限已授予");
} else {
print("iOS: 蓝牙权限被拒绝");
}
}
Future<void> requestCameraPermission() async {
PermissionStatus status = await Permission.camera.request();
if (status.isGranted) {
print("iOS: 相机权限已授予");
} else if (status.isPermanentlyDenied) {
print("iOS: 相机权限被永久拒绝,请前往设置开启");
} else {
print("iOS: 相机权限被拒绝");
}
}
Future<void> requestStoragePermission() async {
PermissionStatus status = await Permission.photos.request();
if (status.isGranted) {
print("iOS: 存储权限已授予");
} else if (status.isPermanentlyDenied) {
print("iOS: 存储权限被永久拒绝,请前往设置开启");
} else {
print("iOS: 存储权限被拒绝");
}
}
Future<void> requestNotificationPermission() async {
PermissionStatus status = await Permission.notification.request();
if (status.isGranted) {
print("iOS: 通知权限已授予");
} else {
print("iOS: 通知权限被拒绝");
}
}
Future<void> requestPhonePermission() async {
PermissionStatus status = await Permission.phone.request();
if (status.isGranted) {
print("iOS: 电话权限已授予");
} else if (status.isPermanentlyDenied) {
print("iOS: 电话权限被永久拒绝,请前往设置开启");
} else {
print("iOS: 电话权限被拒绝");
}
}
}