转载自: https://blog.youkuaiyun.com/Negrooo/article/details/79540067
应用常驻后台?需要用户对手机做配置
现在 Android 软件想常驻后台已经不太可能了,各个手机厂商为了防止手机常驻后台采取了不同的解决方案,好处是用户告别了手机的卡顿、耗电、隐私泄露等现象,不好的地方就是用户设置太麻烦了。
现在手机厂商有各自的手机管理软件,这种差别对安卓开发人员来说也是一种挑战,需要对各个厂商的手机进行适配。
就拿推送来说,想要提高推送的到达率,需要开发人员去集成小米推送、华为推送、魅族推送、极光推送。相同的功能在不同的手机上就要走不同的渠道,费时费力。
之所以想要应用常驻后台,除了推送的需求以外,还有其他一些需求场景。比如像 iOS 那样可以注册 iBeacon 唤醒、Location 唤醒。
希望 Google 官方可以早日给点解决方案。
接下来我们看看不同厂商的 Android 系统应该怎么设置:
小米【MIUI】
自启动管理:需要把应用加到【自启动管理】列表,否则杀进程或重新开机后进程不会开启,只能手动开启应用。
添加到自启动管理以后,应用就可以监听各种系统广播进行拉活。
通知栏设置:应用默认都是显示通知栏通知,如果关闭,则收到通知也不会提示。
有没有遇到这种情况:测试同学把手机的通知栏通知关闭,然后给你提 BUG !!!
网络助手:可以手动禁止已安装的第三方程序访问 2G/3G 和 WIFI 的网络和设置以后新安装程序是否允许访问 2G/3G和 WIFI 的网络
MIUI 7 神隐模式:允许应用进行自定义配置模式,应用在后台保持联网可用,否则应用进入后台时,应用无法正常接收消息。【设置】下电量和性能中【神隐模式】
小米手机切到后台之后,网络、定位、蓝牙都不正常了! 检查一下【神隐模式】吧。
华为【EMUI】
自启动管理:需要把应用加到【自启动管理】列表,否则杀进程或重新开机后进程不会开启,只能手动开启应用。
后台应用保护:需要手动把应用加到此列表,否则设备进入睡眠后会自动杀掉应用进程,只有手动开启应用才能恢复运行。
通知管理:应用状态有三种:提示、允许、禁止。禁止应用则通知栏不会有任何提醒。
魅族【Flyme】
自启动管理:需要把应用加到【自启动管理】列表,否则杀进程或重新开机后进程不会开启,只能手动开启应用。
通知栏推送:关闭应用通知则收到消息不会有任何展示
省电管理:安全中心里设置省电模式,在【待机耗电管理】中允许应用待机时,保持允许,否则手机休眠或者应用闲置一段时间,无法正常接收消息。
VIVO【Funtouch OS】
内存一键清理:需要将应用加入【白名单】列表,否则系统自带的 “一键加速”,会杀掉进程。
自启动管理:需要将应用加入 “i管家” 中的【自启动管理】列表,否则重启手机后进程不会自启。但强制手动杀进程,即使加了这个列表中,后续进程也无法自启动。
OPPO【ColorOS】
冻结应用管理:【设置】-【电池】-【耗电保护】,找到相应应用程序关闭【后台冻结】和【检测到异常时自动优化】。被优化的程序,无法在后台正常接收信息。
自启动管理:【手机管家】-【权限隐私】-【自启动管理】。注意:开启了自启动以后,用户主动杀死进程,还是不能自启动。
内存一键清理:【最近程序列表】-【下拉锁定】。程序锁定之后,一键清理就不会清理掉进程了。
三星
内存一键优化:需要将应用加入【白名单】列表,否则系统内存优化后,会杀掉应用进程。
自启动管理:需要把应用加到【自启动管理】列表,否则杀进程或重新开机后进程不会开启,只能手动开启应用。
还有哪些 Android 系统需要配置,希望大家踊跃留言,一起完善起来,造福苦逼的 Android 攻城狮。
参考资料: