|
|
|
|
@ -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,
|
|
|
|
|
|