gre*_*f82 9 android android-6.0-marshmallow
打瞌睡时是否可以使用网络访问?如果我的应用程序忽略电池优化不会进入待机状态,但无论如何都会受到打瞌睡的影响.我错过了什么吗?
无论您的应用程序是否忽略电池优化,都会在打盹模式下禁用网络访问.将您的设备从打盹模式唤醒并获取网络访问权限的唯一方法是向您的应用程序发送高优先级的Google云消息.
编辑:可以让Android忽略您的应用程序的电池优化,这有效地禁用了应用程序的打盹模式.但是,这需要使用方法setExactAndAllowWhileIdle(每15分钟最多一次唤醒)和用户交互,这可以这样做:
Intent intent = new Intent();
String packageName = context.getPackageName();
PowerManager pm = (PowerManager) context.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));
}
context.startActivity(intent);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
11214 次 |
| 最近记录: |