下载了 Server 酱的 Android 端 App
平时是有图标常驻通知栏的
在多窗口界面清除后台之后,通知栏图标消失
但随即又会在通知栏出现
当然我已经设置了 APP 的 自启动 权限
请问这个功能是如何实现的呢?

下载了 Server 酱的 Android 端 App
平时是有图标常驻通知栏的
在多窗口界面清除后台之后,通知栏图标消失
但随即又会在通知栏出现
当然我已经设置了 APP 的 自启动 权限
请问这个功能是如何实现的呢?
1 ziseyinzi Feb 15, 2023 首先,多任务界面划掉窗口不代表清除了后台 |
3 ysc3839 Feb 15, 2023 via Android 可以看看 Telegram Android 的代码,我只知道也有这样的功能 |
4 Fo3256Go Feb 15, 2023 via Android 应该是一个消息推送服务吧, 不管是真的要推送消息,还是虚假地宣称推送消息为了保活。 只要它这样宣称了,系统就会优先允许它留在后台。 还有那种在后台播放空白音乐的,都是宣称自己有音乐要播放,其实是为了别的。 |
5 cnuser002 Feb 15, 2023 按你这描述,可能是做出了守护进程,在主程序挂了之后,守护进程再把它拉起来。相当于没有完全关闭,它就不停复活。你可以试试关闭手机重启,它还会不会自己冒出来。 安卓应用常驻后台还是很常见的。你划掉可能只是应用的 Activity ,它还有个 Service 在后台运行着。Service 除了没界面,其它的活儿都能继续干的。 |
6 learningman Feb 15, 2023 实现方法太多了,试举两例 首先有通知是 foreground service 的强制要求,保活必须要有个 blocking 的通知挂在前台。应用被清除的时候会调用到 onDestroy 的 lifecycle hook ,可以在这个 hook 中做重新唤醒的操作。 比如可以用 WorkManager 设置一个 1 秒后启动的单次任务唤醒。 可以用 Alarm 设置一秒后的唤醒。 方法太多了,我说的这些是调用正常 API 能实现的,反射搞黑科技的就更多了。 |
7 jeesk Feb 15, 2023 原生的可以。 国产 ui 你试一试呢? 多进程都会被干 |
8 cheng6563 Feb 15, 2023 正常 API 一堆 |
10 rojer12 Feb 16, 2023 正常的 api 一堆,同系软件之间的相互唤醒啊,方法太多了 不是常用软件的建议直接都放 ice box 冻结就好了 |
11 systemcall Feb 16, 2023 via Android 国产系统很多是有厂家级 api 的,比如微信就在用,不仅不会被轻易杀掉,还可以在应用自己觉得性能不够用的情况下杀掉别的应用 |
12 jiaming1992 Feb 16, 2023 既然你已经设置了 app 自启动权限,那它就有概率会被其他保活应用唤醒啊,国产应用集成的乱八七糟第三方 sdk 那些个互拉行为不知道吗 |