hyzp_ybqx-Commit129:使用android_power_manager_0.1.6添加请求忽略电池优化功能,解决一些明显问题,基本可用

This commit is contained in:
WinUser01
2022-04-23 20:34:07 +08:00
parent 8cef7b9a71
commit fb01fa3c72
3 changed files with 30 additions and 0 deletions
+27
View File
@@ -1,10 +1,12 @@
import 'dart:async';
import 'dart:io';
import 'package:android_power_manager/android_power_manager.dart';
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:fluttertoast/fluttertoast.dart';
import 'package:intl/date_symbol_data_local.dart';
//import 'file_manager.dart';
import 'package:path_provider/path_provider.dart';
import 'package:permission_handler/permission_handler.dart';
@@ -42,10 +44,35 @@ checkPermission() {
});
}
requestIgnoreBatteryOptimizations() async {
bool success = await AndroidPowerManager.requestIgnoreBatteryOptimizations();
if (success) {
String isIgnoringBatteryOptimizations = await _checkBatteryOptimizations();
// setState(() {
// _isIgnoringBatteryOptimizations = isIgnoringBatteryOptimizations;
// });
print("isIgnoringBatteryOptimizations = $isIgnoringBatteryOptimizations");
}
}
Future<String> _checkBatteryOptimizations() async {
String isIgnoringBatteryOptimizations;
// Platform messages may fail, so we use a try/catch PlatformException.
try {
isIgnoringBatteryOptimizations =
'${await AndroidPowerManager.isIgnoringBatteryOptimizations}';
} on PlatformException {
isIgnoringBatteryOptimizations = 'Failed to get platform version.';
}
return isIgnoringBatteryOptimizations;
}
//整个Flutter App的入口03
// Permission check,适用于 permission_handler: ^5.x.x
Future<bool> getPermission() async {
if (Platform.isAndroid) {
await requestIgnoreBatteryOptimizations(); // 请求忽略电池优化
// You can request multiple permissions at once.
Map<Permission, PermissionStatus> permissionStatuses = await [
Permission.storage,