hyzp_ybqx-Commit129:使用android_power_manager_0.1.6添加请求忽略电池优化功能,解决一些明显问题,基本可用
This commit is contained in:
@@ -33,6 +33,8 @@
|
||||
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
|
||||
<!-- 访问网络,进行地图相关业务数据请求,包括地图数据,路线规划,POI检索等 -->
|
||||
<uses-permission android:name="android.permission.INTERNET" />
|
||||
<!-- 请求忽略电池优化,用于后台定时提醒等 -->
|
||||
<uses-permission android:name="android.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS"/>
|
||||
|
||||
<application
|
||||
android:name="com.flutter.hyzp_ybqx.MyApplication"
|
||||
|
||||
@@ -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,
|
||||
|
||||
@@ -99,6 +99,7 @@ dependencies:
|
||||
camera: ^0.5.8+11
|
||||
audioplayers: ^0.16.2
|
||||
flutter_background_service: ^0.0.1+21
|
||||
android_power_manager: ^0.1.6
|
||||
|
||||
encrypt: ^4.1.0
|
||||
device_info: ^1.0.0
|
||||
|
||||
Reference in New Issue
Block a user