Android 省电策略 杀服务怎么办?

194 天前
 as9567585

正在做一个语音房功能。flutter 开发的,不太懂 android 原生。

目前测试机是小米 9 MIUI12.5 。

设置了 app 常驻后台,虽然不杀后台了。

但是锁屏一段时间后,语音房内的 websocket 和 webrtc 就都断了。

测试发现把“省电策略”设置“无限制”,就能正常锁屏,并保持语音通话了。

想问下,针对这个“省电策略”,开发者能做什么呢?

4927 次点击
所在节点    Android
28 条回复
psklf
194 天前
开前台服务也不行吗?
shinsekai
194 天前
有各种保活方法吧,比如一像素悬浮窗或者闹钟什么的
fredcc
194 天前
小米系统:让用户自己选择,设置无限制耗电
CEBBCAT
194 天前
你做了哪些研究呢?
vcn8yjOogEL
194 天前
https://dontkillmyapp.com
可以弹窗申请,但不知道弹窗会不会被系统拦截
知名 App 在系统的白名单里
ysc3839
194 天前
确定有做成前台服务(通知栏常驻)?我手头上的 MIUI ,那些有前台服务的 app ,即使设置成智能限制也是正常的。
Musong
194 天前
自启动+省电无限制,李跳跳也没挂过
rokycool
194 天前
小米有多重休眠;
1 基于云控的神隐模式,
2 后台管控的无限制
3 动作传感器+时间段 的所谓"自适应休眠"

建议你要不直接用 root 吧
as9567585
194 天前
@psklf 只要不锁屏,就没有问题的,切换到其他 app ,后台挂起也没有事。

就是锁屏之后,只要不修改“省电策略”为“无限制”, 就会杀 websocket 和 webrtc
as9567585
194 天前
@ysc3839 不太懂 Android 原生,会一点 flutter ,我研究下
as9567585
194 天前
@rokycool 😂, 我 root 可以,也不能让用户都 root 啊
as9567585
194 天前
@Musong 很久没有用 Android 了,也非 Android 开发,flutter 写的。

总是让用户自己去设置“省电模式”,感觉不太友好啊。

还是想问下专业的 Android 开发,有什么办法能在开发侧就处理了,不要麻烦用户。
as9567585
194 天前
@vcn8yjOogEL 听说过知名的 app 都在系统的白名单里,这些小 app 怎么办呢,只能麻烦用户去设置省电模式了吗?
gam2046
194 天前
尝试 acquireWakeLock 以及 WifiLock
vcn8yjOogEL
194 天前
@as9567585 #13 对的,一般来说启动时会有一个欢迎页面解释这些权限,然后再弹窗向用户请求
原生一般点确认就不用管了,第三方系统可能还会有一堆杂七杂八的优化需要修改

以及没记错持续通知也可以用来保活,因此你可以做一个像通话那样的通知,这样就不需要申请权限了
TArysiyehua
194 天前
@as9567585 专门出一个页面解释你的 app 要锁屏联网,让用户跳转到省电页面,给你的 app 设置即可。问题来了,锁屏为啥非要连着呢?如果是产品要求,那其实还有合规问题的。
如果非要搞,就让产品按照我之前说的,出页面解释。让用户去开,如果用户没开那就没办法了。
另外没有 api 可以申请
as9567585
194 天前
@TArysiyehua 语音房嘛,语音通话,有的时候聊天聊着聊着就忘记,手机待机自动就锁屏了。

就像微信,有的时候就锁着屏聊天。
as9567585
194 天前
@vcn8yjOogEL 我研究研究,,
Musong
194 天前
@as9567585 #12 目前我遇到的 国内的李跳跳、椒盐音乐,都是引导用户跳转省电设置修改。国外的 FloderSync 也是。似乎现在提倡各种权限让用户自己选择
Musong
194 天前
@Musong #19 还有 AnyDesk RustDesk 啥的,不过 都是直接跳转该应用的省电设置界面,chua 的一下一步到位

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/987828

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX