Merge remote-tracking branch 'Gitea/master' into iOS
This commit is contained in:
@@ -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';
|
||||
@@ -44,10 +46,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,
|
||||
|
||||
Reference in New Issue
Block a user