
现在是用的这种方式启动的服务,如何能够保持服务一直在后台运行,有 root 权限
|  |      1kop1989smurf      2023-05-16 09:59:56 +08:00 自从 Android6.0 引入 doze 机制之后,就不存在通过正常手段可以“一直后台运行”的服务了。 非正常手段有很多,比如一个像素点的 Activity ,ROM 白名单等等。但这也都不能保证 Activity/Service 的活跃状态。 | 
|  |      2sadfQED2      2023-05-16 10:00:06 +08:00 via Android 有 root 权限的话把 apk 放到系统目录试试呢。我以前在 android5 版本这样做是没问题的 如果这不行的话就装个 xposed ,然后尝试一些 xposed 的保活模块 | 
|  |      3greenskinmonster      2023-05-16 10:14:23 +08:00 设备管理器? Accessibility Service ?如果你能接受每次开机手动运行一次,启动前台服务的话,也是能做到的。以上都不需要 root 。 | 
|  |      4horou OP @greenskinmonster 可以接受,系统的 Launcher 桌面也是我们做的,在 Launcher 里面启动我们的服务应该不会被进程杀死吧 | 
|  |      5EI8xU01k92WdI1Mb      2023-05-16 12:20:24 +08:00 俩 service 互相拉起 | 
|      65evWx1D0iuQ8fb15      2023-05-16 12:55:09 +08:00 via iPad | 
|  |      7ysc3839      2023-05-16 16:48:56 +08:00 via Android 显示一个通知的“前台服务”是能尽可能保持运行的,不显示通知的后台服务最多只能做到被杀死后重新启动。可以看一下 Telegram Android 的代码,在 MIUI 下测试,允许自启动后,后台服务被杀死也能自动重启。 | 
|      8deng81416754      2023-05-16 16:51:55 +08:00 瞧瞧跟你讲,系统不会杀 luacher 应用,你可以把服务加到这里 | 
|  |      9codehz      2023-05-16 20:21:58 +08:00 有系统权限?试试直接在 framework 里添加一个系统服务 | 
|      10TArysiyehua      2023-05-16 20:42:33 +08:00 @horou 把你的进程加到系统白名单里就好了,都不用保活 | 
|      11cvbnt      2023-05-16 20:53:18 +08:00 via Android 可以研究一下拼多多 | 
|  |      12Ionian      2023-05-16 22:41:59 +08:00 WorkManager 呢 | 
|  |      13NSChris      2023-05-17 13:19:24 +08:00 加到闹钟服务里面 |