From 93398afc8eea2dc4196d5ef366b2ee62ac32c11e Mon Sep 17 00:00:00 2001 From: Ark74 Date: Thu, 12 Mar 2026 10:49:44 -0600 Subject: [PATCH] [MA] only send certain manufacturers to appinfo --- .../org/iiab/controller/MainActivity.java | 38 +++++++++++-------- 1 file changed, 23 insertions(+), 15 deletions(-) diff --git a/apk/controller/app/src/main/java/org/iiab/controller/MainActivity.java b/apk/controller/app/src/main/java/org/iiab/controller/MainActivity.java index 20c10ff..6014cdf 100644 --- a/apk/controller/app/src/main/java/org/iiab/controller/MainActivity.java +++ b/apk/controller/app/src/main/java/org/iiab/controller/MainActivity.java @@ -377,22 +377,30 @@ public class MainActivity extends AppCompatActivity implements View.OnClickListe if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE); if (pm != null && !pm.isIgnoringBatteryOptimizations(getPackageName())) { - String manufacturer = Build.MANUFACTURER.toLowerCase(); - String message = getString(R.string.battery_opt_msg); - - if (manufacturer.contains("oppo") || manufacturer.contains("realme")) { - message += getString(R.string.battery_opt_oppo_extra); - } else if (manufacturer.contains("xiaomi")) { - message += getString(R.string.battery_opt_xiaomi_extra); - } + String manufacturer = Build.MANUFACTURER.toLowerCase(); + String message = getString(R.string.battery_opt_msg); - new AlertDialog.Builder(this) - .setTitle(R.string.battery_opt_title) - .setMessage(message) - .setPositiveButton(R.string.go_to_settings, (dialog, which) -> openBatterySettings(manufacturer)) - .setNegativeButton(R.string.cancel, null) - .show(); - } + if (manufacturer.contains("oppo") || manufacturer.contains("realme") || manufacturer.contains("xiaomi")) { + + if (manufacturer.contains("oppo") || manufacturer.contains("realme")) { + message += getString(R.string.battery_opt_oppo_extra); + } else if (manufacturer.contains("xiaomi")) { + message += getString(R.string.battery_opt_xiaomi_extra); + } + + new AlertDialog.Builder(this) + .setTitle(R.string.battery_opt_title) + .setMessage(message) + .setPositiveButton(R.string.go_to_settings, (dialog, which) -> openBatterySettings(manufacturer)) + .setNegativeButton(R.string.cancel, null) + .show(); + } + else { + Intent intent = new Intent(Settings.ACTION_REQUEST_IGNORE_BATTERY_OPTIMIZATIONS); + intent.setData(Uri.parse("package:" + getPackageName())); + startActivity(intent); + } + } } }