1.2 账号API
绑定账号
- 将应用内账号和推送通道相关联,可以实现按账号的定点消息推送;
- 设备只能绑定一个账号,同一账号可以绑定到多个设备;
- 同一设备更换绑定账号时无需进行解绑,重新调用绑定账号接口即可生效;
- 若业务场景需要先解绑后绑定,在解绑账号成功回调中进行绑定绑定操作,以此保证执行的顺序性;
- 账户名设置支持64字节。
参数
- [backcolor=transparent]void[backcolor=transparent] bindAccount[backcolor=transparent]([backcolor=transparent]String[backcolor=transparent] account[backcolor=transparent],[backcolor=transparent] [backcolor=transparent]CommonCallback[backcolor=transparent] callback[backcolor=transparent]);
解绑账号
参数
- [backcolor=transparent]void[backcolor=transparent] unbindAccount[backcolor=transparent]([backcolor=transparent]CommonCallback[backcolor=transparent] callback[backcolor=transparent]);
1.3 标签API
绑定标签
- 绑定标签到指定目标;
- 支持向设备、账号和别名绑定标签,绑定类型由参数target指定;
- 绑定标签在10分钟内生效;
- App最多支持绑定1万个标签,单个标签最大支持128字符。
参数
- target 目标类型,1:本设备; 2:本设备绑定账号; 3:别名
- target(V2.3.5及以上版本) 目标类型,CloudPushService.DEVICE_TARGET:本设备; CloudPushService.ACCOUNT_TARGET:本账号; CloudPushService.ALIAS_TARGET:别名
- tags 标签(数组输入)
- alias 别名(仅当target = 3时生效)
- callback 回调
- [backcolor=transparent]void[backcolor=transparent] bindTag[backcolor=transparent]([backcolor=transparent]int[backcolor=transparent] target[backcolor=transparent],[backcolor=transparent] [backcolor=transparent]String[backcolor=transparent][][backcolor=transparent] tags[backcolor=transparent],[backcolor=transparent] [backcolor=transparent]String[backcolor=transparent] alias[backcolor=transparent],[backcolor=transparent] [backcolor=transparent]CommonCallback[backcolor=transparent] callback[backcolor=transparent]);
解绑标签
- 解绑指定目标标签;
- 支持解绑设备、账号和别名标签,解绑类型由参数target指定;
- 解绑标签在10分钟内生效;
- 解绑标签只是解除设备和标签的绑定关系,不等同于删除标签,即该APP下标签仍然存在,系统目前不支持标签的删除。
参数
- target 目标类型,1:本设备; 2:本设备绑定账号; 3:别名。
- target(V2.3.5及以上版本) 目标类型,CloudPushService.DEVICE_TARGET:本设备; CloudPushService.ACCOUNT_TARGET:本账号; CloudPushService.ALIAS_TARGET:别名
- tags 标签(数组输入)
- alias 别名(仅当target = 3时生效)
- callback 回调
- [backcolor=transparent]void[backcolor=transparent] unbindTag[backcolor=transparent]([backcolor=transparent]int[backcolor=transparent] target[backcolor=transparent],[backcolor=transparent] [backcolor=transparent]String[backcolor=transparent][][backcolor=transparent] tags[backcolor=transparent],[backcolor=transparent] [backcolor=transparent]String[backcolor=transparent] alias[backcolor=transparent],[backcolor=transparent] [backcolor=transparent]CommonCallback[backcolor=transparent] callback[backcolor=transparent]);
查询标签
- 查询目标绑定标签,当前仅支持查询设备标签;
- 查询结果可从回调onSuccess(response)的response获取;
- 标签绑定成功且生效(10分钟内)后即可查询。
参数
- target 目标类型,1: 本设备
- target(V2.3.5及以上版本) 目标类型,CloudPushService.DEVICE_TARGET:本设备;
- callback 回调
- [backcolor=transparent]void[backcolor=transparent] listTags[backcolor=transparent]([backcolor=transparent]int[backcolor=transparent] target[backcolor=transparent],[backcolor=transparent] [backcolor=transparent]CommonCallback[backcolor=transparent] callback[backcolor=transparent]);
1.4 别名API
添加别名
- 设备添加别名;
- 单个设备最多添加128个别名,且同一别名最多添加到128个设备;
- 别名支持128字节。
参数
- [backcolor=transparent]void[backcolor=transparent] addAlias[backcolor=transparent]([backcolor=transparent]String[backcolor=transparent] alias[backcolor=transparent],[backcolor=transparent] [backcolor=transparent]CommonCallback[backcolor=transparent] callback[backcolor=transparent]);
删除别名
- 删除设备别名;
- 支持删除指定别名和删除全部别名(alias = null || alias.length = 0)。
参数
- alias 别名(alias = null or alias.length = 0时,删除设备全部别名)
- callback 回调
- [backcolor=transparent]void[backcolor=transparent] removeAlias[backcolor=transparent]([backcolor=transparent]String[backcolor=transparent] alias[backcolor=transparent],[backcolor=transparent] [backcolor=transparent]CommonCallback[backcolor=transparent] callback[backcolor=transparent]);
查询别名
- 查询设备别名;
- 查询结果可从回调onSuccess(response)的response中获取;
- 从V3.0.9及以上版本开始,接口内部有5s短缓存,5s内多次调用只会请求服务端一次。
参数
- [backcolor=transparent]void[backcolor=transparent] listAliases[backcolor=transparent]([backcolor=transparent]CommonCallback[backcolor=transparent] callback[backcolor=transparent]);
1.5 通知设置API
设置通知声音
- 设置推送通知声音文件路径;
- 若不调用本接口,默认获取资源id为R.raw.alicloud_notification_sound的资源文件;
- 若没有获取到指定声音文件,取设备设置的消息声音。
参数
- [backcolor=transparent]void[backcolor=transparent] setNotificationSoundFilePath[backcolor=transparent]([backcolor=transparent]String[backcolor=transparent] filePath[backcolor=transparent]);
设置通知栏图标
- 设置推送通知栏图标资源Bitmap。
- 若不调用本接口,默认获取id为R.drawable.alicloud_notification_largeIcon的资源文件;
- 若没有获取到指定图标文件,取App启动图标。
参数
- [backcolor=transparent]void[backcolor=transparent] setNotificationLargeIcon[backcolor=transparent]([backcolor=transparent]Bitmap[backcolor=transparent] icon[backcolor=transparent]);
设置状态栏图标
- 设置推送状态栏图标资源Id;
- 若不调用本接口,默认获取id为R.drawable.alicloud_notification_smallIcon的资源文件;
- 若没有获取到指定资源文件Id,取App启动图标。
参数
- [backcolor=transparent]void[backcolor=transparent] setNotificationSmallIcon[backcolor=transparent]([backcolor=transparent]int[backcolor=transparent] iconId[backcolor=transparent]);
设置免打扰时段
- 设置免打扰时间段,过滤所有通知与消息;
- 免打扰时段仅支持设置一次,多次调用以最后一次调用设置时段为准;
- 设置免打扰时段为00:00 - 00:00,可取消免打扰功能;(以下功能支持该用法,V2.3.5及以上版本使用关闭免打扰功能接口)
- 全天免打扰可以设置为”0:0-23:59”
- 免打扰时段设置对小米辅助弹窗通知无效。
参数
- startHour 免打扰的起始时间(小时),24小时制,取值范围:0-23
- startMinute 免打扰起始时间(分钟),取值范围:0-59
- endHour 免打扰的结束时间(小时),24小时制,取值范围:0-23
- endMinute 免打扰结束时间(分钟),取值范围:0-59
- [backcolor=transparent]void[backcolor=transparent] setDoNotDisturb[backcolor=transparent]([backcolor=transparent]int[backcolor=transparent] startHour[backcolor=transparent],[backcolor=transparent] [backcolor=transparent]int[backcolor=transparent] startMinute[backcolor=transparent],[backcolor=transparent] [backcolor=transparent]int[backcolor=transparent] endHour[backcolor=transparent],[backcolor=transparent] [backcolor=transparent]int[backcolor=transparent] endMinute[backcolor=transparent],[backcolor=transparent] [backcolor=transparent]CommonCallback[backcolor=transparent] callback[backcolor=transparent]);
<a name="关闭免打扰功能(V2.3.5及以上版本支持)" class="reference-link" style="box-sizing: border-box; color: rgb(0, 193, 224); background: 0px 0px; transition: color 0.2s; font-weight: inherit;">关闭免打扰功能(V2.3.5及以上版本支持)
- 关闭后,先前设置的免打扰时段失效
- 免打扰功能默认是关闭的
- 没有对应的开发免打扰功能接口,调用设置免打扰功能时段功能后自动打开免打扰功能
- [backcolor=transparent]void[backcolor=transparent] closeDoNotDisturbMode[backcolor=transparent]();
<a name="删除所有通知接口(V2.3.7及以上版本支持)" class="reference-link" style="box-sizing: border-box; color: rgb(0, 193, 224); background: 0px 0px; transition: color 0.2s; font-weight: inherit;">删除所有通知接口(V2.3.7及以上版本支持)
- 删除推送SDK创建的所有通知
- 若需要实现精准删除特定通知可以在onNotification回调中获取通知id,自行删除
- [backcolor=transparent]void[backcolor=transparent] clearNotifications[backcolor=transparent]();
<a name="1.6 自建通知统计上报API(V3.0.6及以上版本支持)" class="reference-link" style="box-sizing: border-box; color: rgb(0, 193, 224); background: 0px 0px; transition: color 0.2s; font-weight: inherit;">1.6 自建通知统计上报API(V3.0.6及以上版本支持)
[font=PingFangSC, "]本接口主要针对统计用户自建通知(通过阿里云推送发送透传消息,并在onMessage回调中自行创建通知)的删除/点击事件上报,其相关实现可以参考移动推送Android SDK:透传消息+用户自建通知最佳实践,如果您直接通过阿里云推送通知,无需使用相关接口。
[font=PingFangSC, "]
自建通知点击上报接口
参数
- [backcolor=transparent]void[backcolor=transparent] clickMessage[backcolor=transparent]([backcolor=transparent]CPushMessage[backcolor=transparent] message[backcolor=transparent]);
自建通知删除上报接口
参数
- [backcolor=transparent]void[backcolor=transparent] dismissMessage[backcolor=transparent]([backcolor=transparent]CPushMessage[backcolor=transparent] message[backcolor=transparent]);
<a name="1.7 电话API(V3.0.11及以上版本支持)" class="reference-link" style="box-sizing: border-box; color: rgb(0, 193, 224); background: 0px 0px; transition: color 0.2s; font-weight: inherit;">1.7 电话API(V3.0.11及以上版本支持)
为提高信息的到达率和实效性,扩展推送的使用场景,我们推出了推送与短信的融合通知模式。开发者可以设置在一定时间内,如果用户未收到或未点击推送,通过短信补发通知用户。具体方案可参考:
推送短信融合。
为实现推送短信融合方案,需要在终端接入绑定/解绑电话号接口,接口详情如下。
绑定电话号
将设备与电话号绑定
参数
- phoneNumber 要绑定的手机号
- callback 回调
- [backcolor=transparent]void[backcolor=transparent] bindPhoneNumber[backcolor=transparent]([backcolor=transparent]String[backcolor=transparent] phoneNumber[backcolor=transparent],[backcolor=transparent] [backcolor=transparent]CommonCallback[backcolor=transparent] callback[backcolor=transparent]);
解绑电话号
解除当前设备与电话号的绑定关系
参数
- [backcolor=transparent]void[backcolor=transparent] unbindPhoneNumber[backcolor=transparent]([backcolor=transparent]CommonCallback[backcolor=transparent] callback[backcolor=transparent]);