import '/core/utils/logger.dart'; import 'package:get/get.dart'; import 'package:location_service/location_service.dart'; import 'package:permission_handler/permission_handler.dart'; import '/core/utils/permission_util.dart'; //音乐播放管理 class LocationManager extends GetxService { static LocationManager get to => Get.find(); // 音乐服务实例 final LocationService _musicService = LocationService(); /// 初始化 @override void onInit() { super.onInit(); requestNotificationPermission(); Logger.info('初始化权限请求'); } Future requestNotificationPermission() async { final granted = await PermissionUtil.instance.requestPermission( // context: context, permissionType: Permission.locationAlways, permissionName: 'locationPermission'.tr, explanationText: 'locationPermissionExplanation'.tr, permanentDenialText: 'locationPermissionPermanentDenial'.tr, settingsButtonText: 'goToSettings'.tr, cancelButtonText: 'cancel'.tr, ); if (!granted) { Logger.warning('通知权限未被授予'); return; } Logger.info('通知权限已授予'); } /// 释放资源 @override void onClose() { super.onClose(); } //定位 Future> location() async { return await _musicService.location(); } }