基于阿里云移动推送的移动应用推送模式最佳实践

摘要: 一、概念 以下概念对应系统设计时的语义,对于如何合理使用移动推送有借鉴意义 1.1 设备 安装并使用开发者移动应用的装置 1.2 设备ID 阿里云移动推送为设备分配的唯一ID,可以通过阿里云移动推送SDK端提供的接口获取

点此阅读原文:http://click.aliyun.com/m/43047/

一、概念

以下概念对应系统设计时的语义,对于如何合理使用移动推送有借鉴意义

1.1 设备
安装并使用开发者移动应用的装置

1.2 设备ID
阿里云移动推送为设备分配的唯一ID,可以通过阿里云移动推送SDK端提供的接口获取

1.3 账号
使用开发者开发应用的终端用户账号,以手淘为例,这个的账号指的是终端用户的淘宝账号

1.4 标签
终端用户的属性标识,用于对用户进行分组

1.5 别名
设备(及使用设备的用户)的昵称

二、关联关系和限制

图片描述

2.1 deviceID
与设备一一对应,阿里云移动推送系统自动分配,通过接口获取

2.2 账号
与deviceID一一对应,对于同一设备切换账号的场景,通过重新绑定账号实现

2.3 别名
一个deviceID可以对应多个别名
别名是用户粒度的概念,建议用于单推的场景

2.4 标签
一个deviceID可以对应多个标签,一个标签也可以对应多个deviceID

三、推送模式最佳实践

3.1 单推
向指定设备推送,可以通过向指定的deviceID、账号、别名推送实现

deviceID是阿里云移动推送系统为设备分配的ID号,默认只存储在推送SDK和阿里云后台,这个ID除标识作用外没有特殊的意义,一般开发者推送管理平台无需存储该ID
账号、别名都是开发者设置的ID信息,开发者的推送管理系统中保存有相关的信息和关联关系,易于管理和维护。
别名推送在单推场景下的几种常见使用方法:

对单个用户的别名进行推送

以教育类App的一种常见场景为例:某学生进入校园,需要向家长推送一条消息,此时为注册的家长添加一个别名,并通过别名推送。
多渠道统一管理

Android系统碎片化比较严重,App往往需要接入多种推送渠道,此时不同渠道可以使用统一的别名,简化推送系统的管理复杂度
非登录状态推送

部分App用户支持非登录状态使用,这种情况下无法使用账号推送功能,可以通过为该终端用户绑定别名,并使用别名推送,来实现向非登录状态用户推送消息的目标

3.2 组推

向一组用户推送消息

建议使用标签推送

3.3 全推

向全体用户推送

使用全量推送模式