# 消息推送使用指南

# 一、使用前须知

特别说明

  • 腾讯云移动推送 TPNS 已停止售卖,查看公告;仅支持免费试用,查看详情
  • 当前框架层正在对接新版本的腾讯云消息推送,已在内测中,如需参与内测可联系多端小助手拉群对接

App 消息推送是统一管理向 App 用户推送消息的服务,此消息推送功能是基于腾讯云移动推送服务实现,开发者需前往腾讯云使用「移动推送」服务,并创建对应的产品、应用以及完成相关配置后方可使用。为方便开发者更好地理解整体逻辑,需认真阅读本章节的内容:

  • 首先,前往腾讯云使用移动推送服务,创建腾讯云移动推送的产品和应用的产品和应用以及完成相关配置,以获得对应的配置文件以及 AccessID、AccessKey 等信息
  • 然后,在开发者工具中配置启用消息推送功能,并填入对应的配置文件以及 AccessID、AccessKey 等信息;补充说明:在开发者工具开启了消息推送能力后,开发者工具就会将自动接入对应的 SDK
  • 再然后,在 JS 代码侧使用接口启动消息推送服务
  • 最后,返回腾讯云控制台创建推送任务,或是使用服务端 API 去推送,App 端即可接受到对应的消息;以及,消息推送服务的相关管理功能也在腾讯云控制台进行操作

# 1、关于合规指南

根据监管部门要求,使用 SDK 时必须在《隐私政策》中告知终端用户 SDK 使用用途,并且在终端用户未同意《隐私政策》前不得初始化任何 SDK。请确保你开发或运营的应用有符合监管要求的《隐私政策》文本。同时请你务必明确告知终端用户您的应用使用了移动推送服务。

# 2、关于问题反馈

  • 如果是 jsapi 的问题,可联系多端小助手进入官方技术交流群进行处理
  • 如遇到消息推送的功能或者相关问题,可在开发者工具开启消息推送处联系移动推送小助手协助解决,或者前往腾讯云提工单进行处理

# 二、操作指南

本章节的操作指南仅包含开发者工具上的操作,腾讯云控制台相关的操作可前往腾讯云移动推送查看

# 1、Android 消息推送

# a) 下载配置文件

  • 前往移动推送控制台,进入「App 推送管理 - 基础配置」,点击下载“配置文件”

其他注意事项

1、如开发者在腾讯云消息推送控制台更新了相关配置,开发者亦需要在开发者工具这边更新至最新的配置文件

# b) 修改 SDK 版本

  • 下载版本号 ≥ 1.06.2306282 的开发者工具,进入到多端模式后,点击 project.miniapp.json
  • 将 Android SDK 版本改为 1.0.4 及以上版本

# c) 启用消息推送并配置 tpns-configs.json

  • project.miniapp.json 的「扩展 SDK」中配置启用消息推送以及 tpns-configs.json ,操作如下截图

# d) 前往腾讯云发起消息推送

# 2、iOS 消息推送

# a) 获取推送证书

  • 需按照腾讯云文档指引,在移动推送服务中注册 iOS 推送证书,详情可查看推送证书获取指引
  • 同时按照上面的文档,多创建一个新的 Bundle Id 用于「通知服务扩展」能力(即,苹果的 Notification Service Extendsion);
  • 此外,后续需在开发者工具的 project.miniapp.json 中设置 serviceBundleId,且新建的时候选择的 certificate 证书使用需与 App 的一致。
  • 以及,开发者需下载保存好 Bundle Id 对应的 Profile (运行就用开发版,构建发布就用正式版),需在开发者工具上使用到

注意

  • 主工程的 Bundle Id 和 Service 的 Bundle Id 必须不同,且 Service 的 Bundle Id 必须以主工程的 Bundle Id 为前缀(例如,主工程的 Bundle Id:com.tencent.tpns,Service 的 Bundle Id:com.tencent.tpns.service)。
  • certificate 必须和 App 的一致

# b) 启用消息推送并配置相关信息

  • project.miniapp.json 的「扩展 SDK」中配置启用消息推送以及配置 AccessID、AccessKey 以及 serviceBundleId
  • 配置成功后,就可以开始运行/构建 IPA,需使用「证书签名」的方式,不可使用「临时签名」的方式
  • 启用消息推送能力后,签名时会提示需对额外的 Notification Service Extension 的 Profile 进行签名,而这个 Profile 就是在步骤 a) 中保存的 Profile

Windows:签名的时候,在 NSE Profile 中选择对应的 profile

Mac:使用了消息推送以后会出现以下选择框

# 三、API 列表

完成上述配置后,需调用如下 JSAPI 使用消息推送功能:

# 四、其他说明

  • iOS 的厂商通道接入已支持;Android 的厂商通道接入也已支持,覆盖的通道包含:华为荣耀小米魅族VIVOOPPO;注意,需选择 1.0.4 或以上的版本

  • 注意事项:Android 的 targetVersion 建议设置为33 。

  • 此外,如果使用华为的通道,可参考下方配置华为依赖包的版本

# 五、如何关闭使用消息推送 SDK

  • 如开发者不再使用消息推送 SDK ,可在project.miniapp.json 的「扩展 SDK」中配置「不勾选」启用消息推送 SDK 即可
  • 配置完成后,重新构建新的安装包即可

# 六、常见问题

# 1. XGPush_registerPush:fail

  • 消息推送的能力不支持在移动应用助手中调试,开发者需构建 APK 安装到手机上进行测试

# 2. TpnsPlugin ERROR

  • 如果配置了 tpns-configs.json 仍出现下方报错,开发者需检查腾讯云移动推送控制台上配置的包名和在微信开发者工具构建 APK 的包名是否一致

# 3.推送失败

如自测发现推送失败,可前往腾讯云控制台使用相关排查工具进行排查;若自查后仍有问题,请联系腾讯云客服。