1. 功能介绍
app在进入后台时:
- 大约5-60s后, 网络会断开,app停止运行
- 大约10-30min后,系统会杀掉app进程
简单的说,盒子IM在进入后台一段时候,就无法接受消息了,解决这个问题有两个方案:
- 用户手动开启app的后台运行或自启动权限
优点:保活率极高,几乎100%
缺点:麻烦,用户不一定会操作
- 引入保活插件
优点:简单,用户无需多余操作
缺点:保活成功率低,消耗电量可能更高
2. 保活插件介绍
我们引入的插件名为:android-keeplive,虽然名字带andriod,但其实是支持ios保活的,不过里面大部分api确实只支持安卓,插件地址为:
https://ext.dcloud.net.cn/plugin?id=20316
具体的插件使用细节,可以参考上面官方的文档,这里补充几点说明:
- 该插件虽然是收费插件,但我们已经将源码买下,您无需重复付费购买(已得到插件作者同意,集成到项目后,可以出售源码)
- 任何插件都无法保证100%保活成功,本插件亦是如此
- 引入保活插件后,app的耗电量会有所增加
- 引入保活插件后,据说会增加上架难度
- 引入本插件后,打包是必须使用“传统打包”,不能使用“安心打包”,原因暂不清楚
3. 配置说明
开启保活,只需配置.env.js的KEEPALIVE_LEVEL变量即可(默认值为1):
0:完全不开启保活
1: 普通保活:开启后后会生成通知栏信息,多数情况下,可以在后台保活10-30min
2:强力保活:在普通保活的基础上,开启电池优化选项,会弹出“后台运行”的权限请求,相比“普通保活”,有更高的保活概率和保活时长
再次强调:即使是开启强力保活,也不能保证一定能保活成功
4. 效果截图
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END
暂无评论内容