Skip to content

Instantly share code, notes, and snippets.

@tseglevskiy
Last active March 31, 2017 08:50
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save tseglevskiy/dc43de20efd261cfe895 to your computer and use it in GitHub Desktop.
Save tseglevskiy/dc43de20efd261cfe895 to your computer and use it in GitHub Desktop.
Doze mode
if (
connectivityManager.getActiveNetworkInfo() != null &&
connectivityManager.getActiveNetworkInfo().isConnected() &&
(!powerManager.isDeviceIdleMode() ||
powerManager.isIgnoringBatteryOptimizations()))
{
// do something
}
registerReceiver(br,
new IntentFilter(
PowerManager.ACTION_DEVICE_IDLE_MODE_CHANGED));
Intent intent = new Intent();
String packageName = getPackageName();
PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
if (pm.isIgnoringBatteryOptimizations(packageName))
// перейти к белому списку
intent.setAction(Settings.ACTION_IGNORE_BATTERY_OPTIMIZATION_SETTINGS);
else {
// запросить добавление в белый список
// если уже в белом списке, то ничего не произойдет
// !! требуется android.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS
intent.setAction(Settings.ACTION_REQUEST_IGNORE_BATTERY_OPTIMIZATIONS);
intent.setData(Uri.parse("package:" + packageName));
}
startActivity(intent);
@abbath0767
Copy link

// перейти к белому списку
intent.setAction(Settings.ACTION_IGNORE_BATTERY_OPTIMIZATION_SETTINGS);

  • вот зачем к нему переходить?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment