接入小米推送服务到过程中遇到到问题小米推送技术常见问题解答中基本都有答案,只是里面内容太多,一时难以找到想要的答案,这里收集整理一下,方便以后查看。
1. 应用关闭后收不到推送
而如果是在非MIUI系统中,是需要应用驻留后台才能接收消息的,因此如果应用被杀死并且不能后台自启动的话,是没有办法接收消息的。为了让app尽可能的驻留后台,小米推送服务SDK监听了网络变化等系统事件,并且有应用之间的互相唤醒,但这些措施并不能保证应用可以一直在后台驻留。
2. 多包名时,指定userAccount为推送对象不生效
多包名服务与原先的推送服务没有任何冲突,开启多包名后之前的所有功能都可照常使用。(包括指定别名,regID推送,useraccount不支持这一功能)如果没有需求忽略这一功能即可。只有主包名的应用才可以设置userAccount。
3. alias和userAccount应用场景区别
alias和user account都可以用来设置设备对应的用户账号,所不同的是,一个alias只能对应一台设备,如果有多台设备设置了同样的alias,则最后一个设置成功的生效,其它设备就会失效。而一个user account可对应10台以内的设备。因此如果应用是单点登录的,一个账号只会在一台设备上生效,用alias会比较合适。而如果产品需求是单账号多点登录同时接收消息,则用user account会更合适。