移动服务平台推送(AJPush),将消息一站式推送到iPhone手机和绝大部分机型的Android手机上,解决Android继续混乱无法在杀死进程及时收到推送消息。同时将推送功能进行归整,通过应用配置,一套接口可以无缝衔接极光推送、Apple的APNS、小米推送、OPPO推送、vivo推送、华为推送,将推送消息通过不同平台精准分发到应用手机。
* 前端灵活配置,界面化推送测试,推送历史消息结果清晰展示。
* 后端采用MQ进行消息转发,通过消息类型精准分发到不同平台。
* 提供保底降级策略,优先厂商通道发送, 极光推送平台保底发送,保证推送及时到达。
* APP SDK 原生(iOS、Android) 及时接收,完成消息回调。
* 解决Android平台杀死进程无法收到推送问题
* 业务服务只需要三个接口即可完成推送及结果整个完整流程
## 流程图
* 业务服务器接收APP推送唯一标识(deviceId)并与用户信息关联
* 业务服务器发送推送消息内容至推送服务
* APP收到推送消息结果,及时得到反馈

## 实现细节
1、APP 登录应用 获取唯一标识,分别上传至业务服务器和推送服务器,用作推送标识。
2、业务服务器保存用户的标识与用户关联。
3、业务服务器向推送服务器发送批量推送或全推接口,并接收推送回调结果(MsgId)。
4、推送服务接收到推送消息请求,放入MQ队列进行消费。
5、推送服务通过用户标识归整,推送到不同云服务器平台(极光、华为、OPPO、vivo、小米)。
6、用户接收推送结果。
7、推送服务保存推送结果,提供推送消息历史查询接口。
8、业务服务通过MsgId查询详细推送历史。
