android-doze相关内容

如何正确触发 ACTION_REQUEST_IGNORE_BATTERY_OPTIMIZATIONS 意图?

如文档中所述: “拥有 REQUEST_IGNORE_BATTERY_OPTIMIZATIONS 权限的应用可以触发系统对话框,让用户直接将应用添加到白名单,而无需进行设置.应用会触发 ACTION_REQUEST_IGNORE_BATTERY_OPTIMIZATIONS Intent 以触发对话框." 有人能告诉我激发这个意图的正确方法吗? 解决方案 Intent inten ..

在高端手机上杀死了最小的 android 前台服务

我正在尝试创建一个应用程序,让用户可以记录路线(位置/GPS).为了确保即使在屏幕关闭时也能记录位置,我为位置记录创建了一个 前台服务.我将位置存储在 Room Database 中,该数据库使用 Dagger2 注入到我的服务中. 然而,这个服务被Android杀死了,这当然不好.我可以订阅内存不足警告,但这并不能解决我的服务在运行 Android 8.0 的现代高端手机上大约 30 分钟 ..

Android 警报管理器 setExactAndAllowWhileIdle() 在处于打盹模式的 Android 7.0 Nougat 中不起作用

我正在尝试使用警报管理器的 setExactAndAllowWhileIdle 每 30 分钟在我的应用程序中触发一次警报,但它不起作用! 我通过在收到警报信号时发出推送通知来测试功能. 问题是:当设备闲置一段时间后进入打盹模式时,我不再收到警报.但是,一旦打开屏幕,我就会收到通知.我的应用程序需要准确的警报,需要每 30 分钟准时发送一次!由于设备处于打盹模式,无法接收延迟警报或掉线 ..

如何区分进入Doze维护窗口和退出Doze的设备

我有一种方法,该方法会定期运行以保持网络连接正常运行.在打ze模式下,我想禁止它定期运行,而在维护时段内仅运行一次.当设备从Doze中退出时,我希望该方法再次被定期调用.我该怎么做? 我已经注册了一个接收器,该接收器侦听 PowerManager.ACTION_DEVICE_IDLE_MODE_CHANGED 广播,然后调用 PowerManager.isDeviceIdleMode().但 ..
发布时间:2021-04-04 18:32:02 移动开发

打ze模式-前台服务是否继续运行?

我很困惑阅读此书,并试图弄清楚当设备进入深度打ze模式时前台服务是否将运行.有人可以澄清.我想知道棉花糖和棉花糖是否可以继续运行.我一直以为设备休眠时所有线程都被挂起,即使是前台服务也被挂起. 我看到了据我所知,在打ze模式限制下,仅网络呼叫停止了.但是可以说我正在做一些长时间运行的主线程工作,这意味着它可以继续正常运行吗?即使在打ze睡模式下? 解决方案 前台服务在休眠模式下不会终 ..
发布时间:2020-08-28 06:34:18 移动开发

高端手机杀死了最少的Android前台服务

我正在尝试创建一个允许用户记录路线(位置/GPS)的应用.为了确保即使在屏幕关闭时也记录位置,我为位置记录创建了foreground service.我将位置存储在Room Database中,该位置已使用Dagger2注入到我的服务中. 但是,此服务被Android杀死了,这当然不好.我可以订阅内存不足警告,但这不能解决潜在的问题,即在运行Android 8.0的现代高端手机上大约30分钟 ..

Android警报管理器setExactAndAllowWhileIdle()在打ze模式下无法在Android 7.0牛轧糖中使用

我正在尝试使用警报管理器的setExactAndAllowWhileIdle每30分钟在我的应用中触发一次警报,但它不起作用! 每当我收到警报信号时,我都会通过发布推送通知来测试功能. 问题是:当设备闲置一段时间后进入打ze模式时,我不再收到警报.但是,一旦我在屏幕上打开,我就会收到一条通知.我的应用程序需要准确的警报,需要每30分钟准确按时发送一次!由于设备处于打ze模式,因此无法接 ..

BroadcastReceiver无法访问互联网

我的广播接收器遇到问题. 我已将闹钟设置为上午6点,它必须触发我的广播接收器,广播接收器只需从互联网下载一些数据并进行处理即可. 例如,如果我将闹钟设置为下午3点,则可以正常工作.但是问题出在上午6点,由于没有网络连接,下载失败. 在尝试下载之前,我执行了部分唤醒锁定.可以与此相关吗?手机是否进入深度睡眠并且部分唤醒锁还不够? 那还能是什么?我已经仔细检查过,让手机保持启用 ..

打ze模式处理

我正在开发一个使用AlarmManager在后台生成一些服务的应用程序.时间对于我们的应用程序至关重要,其功能不能等待下一个维护窗口的出现. 要求用户将应用程序列入白名单不是问题,但不能解决暂停警报的问题.同样,电池消耗也不是什么大问题. 我想到的第一个可能的解决方案是生成一个始终运行的前台服务来处理服务的重新安排,而不是使用AlarmManager来处理,但是这样做会改变我们应用程序的大多 ..

在有/无部分/全部唤醒锁的情况下,打ze模式如何影响后台/前台服务?

这是一个简单的问题,看到有关Google+的大量帖子( 此处 ),并且缺少有关官方文档的信息( 此处 ): 当设备进入“打ze"模式时,应用程序的服务会发生什么? 在有/没有部分/全部唤醒锁的情况下,它对后台/前台服务(绑定/未绑定,已启动/未启动)有什么作用? 例如,为了创建一种在设备屏幕关闭时播放音频流的服务,您会怎么做?如果音频流不是来自本地文件,而是来自网络,该怎么办? ..

不会触发Android Nougat PhoneStateListener

在Android(目标25)中,我有一个后台服务,在onCreate函数中,我初始化了一个电话状态侦听器。在Nougat之前的Android版本上,它可以正常工作,但在Nougat中,即使已授予权限,它也无法正常工作。 公共类服务扩展了IntentService { 类PhoneListener扩展了PhoneStateListener { 字符串TAG = getClass()。g ..

从Android OS 5.1.1自动停止的服务

我正在开发与Voip& amp;相关的应用程序IM(聊天应用程序)。到android OS 5.0为止,它运行良好,并且客户端也没有问题。但是从android OS 5.1.1开始,我们面临问题。 问题: 如果应用位于前景,并且如果设备进入睡眠模式,则表示工作正常。 如果应用处于后台,并且如果 10分钟后设备进入睡眠模式,则所有服务都会自动停止。 测试: 为了进行测试,我 ..

应用程序处于打ze模式时,警报管理器触发的Android通知未触发

我有以下要求。用户需要能够在我的应用中安排定期提醒,该提醒将在每天的确切时间触发推送通知。 此是我希望最终不要提交的那些问题之一,因为在编写它时建议了类似的问题。但是,几个团队成员花了很多时间来查看Android Developer Docs和Stackoverflow,我们似乎离答案还很近,所以我们到了。 如果我创建提醒并将其设置为在未来5分钟内触发通知,则该通知会正常触发。 ..

打ze模式,电池优化白名单,AlarmManager的频率超过9分钟

我正在创建一个与BT设备连接的应用,以收集健康数据(即:体温)。 传感器会定期睡眠,仅在有限的时间范围内唤醒。 ve试图创建AlarmManager来使用 setExactAndAllowWhileIdle()触发前景服务,并且它在高于9分钟的时间段内按预期工作, 但在9分钟以下,它将进入打ze模式,并且不会触发AlarmManager BroadcastReceiver。 ..
发布时间:2020-06-03 19:18:01 移动开发

通过ADB拔出设备的电源:“找不到服务”

我必须测试我的应用在打ze模式下的行为。根据文档,我首先必须通过在终端中输入以下命令,设备认为已将其拔出: $ adb shell dumpsys电池拔出 但是什么也没发生,它会记录: 找不到服务:电池 我该怎么办? 解决方案 日志中没有指出电池服务(这可能是特定于设备的。) 输入以下命令以查找现有的电池相关服务: ..

前景服务未在Android O中以打ze模式接收位置更新

我有一个前台服务,需要进行一次位置更新. 它由特定的广播开始,并且在开始时仅在我们的后端发出请求.当它收到另一个广播时,它一次请求位置更新,再执行另一个后端请求,然后自行停止. 编辑:为澄清起见,服务本身会进行位置更新和后端请求.在这方面,它与主应用程序无关. 当手机处于唤醒状态或处于打ze模式时,此功能在Lollipop和棉花糖上均能很好地工作.但是由于某种原因,在Androi ..