gpt4 book ai didi

android - 在android中无限运行服务

转载 作者:行者123 更新时间:2023-11-29 18:52:51 26 4
gpt4 key购买 nike

我一直在尝试在 android 中创建一个服务,以便它无限地监听一个 websocket,然后当收到消息时发出一个通知。我遇到的最常见的教程是我创建一个服务和 onDestroy 的教程该服务触发广播,然后从广播中再次启动服务。但是,当我的应用程序被终止时,这些技术似乎都无法使我的服务保持 Activity 状态。

我收到的一些答案是服务无法无限期地工作,那么 whatsapp 或其他消息应用程序如何始终在后台工作。

最佳答案

The most common tutorial that i encountered is the one in which i create a service and onDestroy of that service a broadcast is triggered and then from the broadcast the service is started again.

该技术肯定不适用于 Android 8.0+。

running a service infinitely in android

这在一般情况下是不可能的,在 Android 8.0+ 上肯定是不可能的。您可以做的最接近的事情是运行前台服务(通过 startForeground()Notification)并返回 START_STICKYSTART_REDELIVER_INTENT 来自 onStartCommand()。如果您的进程终止,Android 应该重新启动您的服务。

我预计当设备在 Android 6.0+ 上进入打瞌睡模式或应用待机时您的代码将不起作用,除非用户将您的应用添加到电池优化白名单。

how does whatsapp or other messaging applications always work in background.

很可能,他们没有。他们很可能正在使用 Firebase Cloud Messaging (FCM)。 WhatsApp 等品牌也可以与设备制造商达成交易以获得优惠待遇,前提是双方都认为这样的交易是个好主意。

关于android - 在android中无限运行服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50552136/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com