对于各类 Android 应用,特别是 Android 游戏而言,针对不同的渠道定制版本、使用不同的包名是运营中常见的一环,但是这样会导致后续使用消息推送时工作量过大,每个包都要单独推送,费时费力,还难以做到精准推送,效率低下。
移动推送团队新推出的“多包名推送”就是针对这一现状的有利工具,开通多包名之后,就可以通过添加渠道包名来轻松添加各个渠道包的包名,一次消息推送就可以触及所有的渠道包。

场景

某游戏因运营推广需求,需要发布一条活动公告给所有游戏玩家,该游戏上架了多个应用市场(例如酷安,安智、豌豆荚,360等),有不同的渠道包名,此时便可使用多包名推送功能,在发送推送消息时打开多包名推送开关,此时,所有该游戏的渠道包都可在同一时间收到此活动公告。

使用前准备

控制台配置

  1. 进入移动推送控制台 产品管理页面
  2. 选择需要配置多包名的应用,单击 配置管理
  3. 当应用未补充主包名时,需填入主包名同时单击 添加包名 ,填入渠道包名。
  4. 当应用已配置主包名可单击 编辑 进入包名管理,单击添加按钮补充渠道包名。

    渠道包名最多支持配置50个。

    多包名厂商通道配置

    当应用有多个包名时,若需要通过厂商通道下发渠道包名的消息,则需要为每个渠道包名申请厂商密钥,并在 移动推送控制台 > App推送管理 > 基础配置 页面进行配置。
    以华为为例,当应用配置了多个包名时,开启华为通道将出现多套密钥配置,需将每个包名的配置补充完整,否则开启多包名推送时该包名下设备的消息将通过移动推送自建通道下发。

    集成 SDK

    配置好包名之后,获取 AccessID、AccessKey ,根据 Android SDK 集成指南 或按照控制台 快速接入 流程配置。

    开始使用

    控制台使用

    当以上配置补充完整并确认无误后,可在 移动推送控制台 > 消息推送 > 新建推送 > 高级设置 多包名推送处开启多包名推送开关,如下图所示:

    开启多包名推送后,推送将对所有包名下匹配推送目标的设备下发。

    多包名推送功能仅限 Android 平台,若包名对应厂商通道未配置,则该包名下注册设备的消息通过移动推送自建通道下发。

    Rest API 使用

    在 Rest API 可选参数中设置 multi_pkg 为 true 即为打开多包名推送,可参考 PushAPI 参数说明
    推送示例如下:

    {
        "audience_type": "token",
        "token_list": [
            "05da87c0ae5973******9e08d884aada5bb2"
        "message_type": "notify",
        "multi_pkg":true,
        "message": {
            "title": "推送标题",
            "content": "推送内容",
            "android": {
                 "custom_content":"{\"key\":\"value\"}"