安卓电池优化

3
我正在开发一个应用程序,该应用程序具有前台服务,我试图检测网络更改以查看何时可以连接和不能连接。在禁用省电模式(三星S6)时,监听ConnectivityManager.CONNECTIVITY_ACTION广播可以完美工作。但是,当我启用省电模式时,我可能会失去后台数据,并且广播不再告诉我任何信息。
我怀疑这与Doze有关,因此我尝试侦听PowerManager.ACTION_DEVICE_IDLE_MODE_CHANGED,但它从未触发。
如果我请求Settings.ACTION_REQUEST_IGNORE_BATTERY_OPTIMIZATIONS,我的问题就解决了,但谷歌正在从Play商店中撤销这些应用程序。有什么办法可以成功地监听到网络连接的变化吗?
1个回答

0

用户必须禁用电池优化。
您可以使用以下代码为用户启动屏幕:

Intent intent = new Intent();
intent.setAction(Settings.ACTION_IGNORE_BATTERY_OPTIMIZATION_SETTINGS);
context.startActivity(intent);

因此,请提示用户禁用电池优化并启动此意图。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接