Ожидаемое поведение заключается в том, что приложение будет работать все время, когда оно находится в состоянии ON. Некоторые телефоны переводят приложение в фоновый режим, если оно какое-то время неактивно. Я хочу, чтобы приложение работало все время, даже в режиме ожидания (режим ожидания означает, что когда мы нажимаем кнопку «Домой», приложение переходит в фоновый режим и будет работать некоторое время).
Я нашел следующий код, и я попробовал это
PowerManager powerManager = (PowerManager) getApplicationContext().getSystemService(POWER_SERVICE);
String packageName = "org.traccar.client";
if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
Intent i = new Intent();
if (!powerManager.isIgnoringBatteryOptimizations(packageName)) {
i.setAction(Settings.ACTION_REQUEST_IGNORE_BATTERY_OPTIMIZATIONS);
i.setData(Uri.parse("package:" + packageName));
startActivity(i);
}
else{
i.setAction(Settings.ACTION_REQUEST_IGNORE_BATTERY_OPTIMIZATIONS);
i.setData(Uri.parse("package:" + packageName));
startActivity(i);
}
}
Даже после работы с кодом по умолчанию используется режим экономии заряда батареи (рекомендуется)
Я хочу, чтобы приложение находилось в режиме без ограничений после открытия приложения, какое-нибудь решение для этого?