From 3f3d1c7f280f45fdf68aad8a5d732a58e86d802f Mon Sep 17 00:00:00 2001 From: gdlbo <41114720+gdlbo@users.noreply.github.com> Date: Mon, 3 Oct 2022 22:59:55 +0300 Subject: [PATCH] Update DisableBattery.java --- .../lite/ui/dialogs/DisableBattery.java | 27 +++++++------------ 1 file changed, 10 insertions(+), 17 deletions(-) diff --git a/app/src/main/java/ru/vtosters/lite/ui/dialogs/DisableBattery.java b/app/src/main/java/ru/vtosters/lite/ui/dialogs/DisableBattery.java index 483208a91..84c2efd5b 100644 --- a/app/src/main/java/ru/vtosters/lite/ui/dialogs/DisableBattery.java +++ b/app/src/main/java/ru/vtosters/lite/ui/dialogs/DisableBattery.java @@ -19,24 +19,17 @@ import ru.vtosters.lite.deviceinfo.OEMDetector; public class DisableBattery { public static void alert(Activity activity) { - if (OEMDetector.isOEM() && Build.VERSION.SDK_INT >= 23 && getBoolValue("showDoze", true)) { - final Context context = getGlobalContext(); - if (!((PowerManager) context.getSystemService(Context.POWER_SERVICE)).isIgnoringBatteryOptimizations(context.getPackageName())) { - new VkAlertDialog.Builder(activity) - .setTitle(getString("batteryissuetitle")) - .setMessage(getString("batteryissuesumm")) - .setCancelable(false) - .setPositiveButton(getString("batteryissuebtn1"), (dialogInterface, i) -> { - var intent = new Intent(Settings.ACTION_REQUEST_IGNORE_BATTERY_OPTIMIZATIONS) - .setFlags(Intent.FLAG_ACTIVITY_NEW_TASK) - .setData(Uri.parse("package:" + context.getPackageName())); - context.startActivity(intent); - }) - .setNeutralButton(getString("batteryissuebtn2"), - (dialogInterface, i) -> edit().putBoolean("showDoze", false).apply() - ) - .show(); + if (OEMDetector.isOEM() && Build.VERSION.SDK_INT >= 23) { + Intent intent = new Intent(); + String packageName = activity.getPackageName(); + PowerManager pm = (PowerManager) activity.getSystemService(Context.POWER_SERVICE); + if (pm.isIgnoringBatteryOptimizations(packageName)) + intent.setAction(Settings.ACTION_IGNORE_BATTERY_OPTIMIZATION_SETTINGS); + else { + intent.setAction(Settings.ACTION_REQUEST_IGNORE_BATTERY_OPTIMIZATIONS); + intent.setData(Uri.parse("package:" + packageName)); } + activity.startActivity(intent); } } }