帮你快速理解、总结文档立即下载

uni-app

最近更新时间:2026-09-02 11:19:30
我的收藏
本文介绍如何在本地快速跑通腾讯云推送服务(TIMPush)的 uni-app 体验 Demo,验证“注册推送 > 离线推送下发 > 通知栏展示”的完整链路。

说明:
Demo 地址:Tencent-RTC/TIMPush_Demouniapp/ 目录)。
Demo 为未配置任何参数的纯净模板,需按下文完成配置后方可构建运行。
产品能力说明请参见 推送服务产品概述

前置准备(控制台)

跑通 Demo 前,请先在腾讯云控制台完成账号与厂商通道准备:
1. 创建应用:登录 即时通信 IM 控制台,在应用列表单击创建应用接入,记录生成的 SDKAppID
2. 获取密钥:进入目标应用的应用配置,单击查看密钥,拷贝并妥善保管 SDKAppID 与客户端密钥 AppKey
注意:
推送服务的客户端密钥与 Chat 的密钥不同,请勿混用。密钥属于敏感信息,请勿提交到代码仓库。
3. 开通推送并配置厂商通道:在控制台推送服务页开通推送能力,按需配置 Android 厂商通道(小米 / 华为 / 荣耀 / OPPO / vivo / 魅族 / FCM)与 iOS APNs 通道,下载 timpush-configs.json 及各厂商服务配置文件,并记录 APNs 证书 ID。鸿蒙端请另行完成 鸿蒙厂商配置

环境要求

项目
要求
HBuilderX
推荐 4.36 ~ 4.63 或 4.66 及以上(4.64 / 4.65 存在已知问题,请避开)
推送插件
TencentCloud-Push >= 1.1.0(已置于 uni_modules/;鸿蒙推送需 >= 1.3.0
测试设备
Android 或 iOS 真机,且必须使用自定义调试基座(标准基座不包含厂商推送通道,无法验证离线推送)

跑通步骤

步骤 1:确认推送插件

TencentCloud-Push 原生插件已位于 uni_modules/ 目录。如需更新,请从 uni-app 插件市场 - 腾讯云推送服务(Push) 下载并导入 HBuilderX。

步骤 2:填写基础凭证

打开 App.vue,将 registerPush 中的占位符替换为实际值:
// 将 0 改为您的 SDKAppID,'' 改为您的 AppKey
registerPush(0, '', (data) => { /* ... */ });
如需与 Chat 登录 userID 打通(即向该 userID 推送消息),请在 registerPush 之前调用 setRegistrationID(userID),且 userID 必须与 Chat 登录使用的 userID 完全一致。

步骤 3:放置离线推送配置文件

配置文件统一放在与 uni_modules 平级nativeResources/ 目录下(不存在请手动新建):
平台
配置文件
放置路径
Android 通用
timpush-configs.json
nativeResources/android/assets/
Android 华为
agconnect-services.json
nativeResources/android/assets/
Android FCM
google-services.json
nativeResources/android/不要放入 assets)
Android 荣耀
mcs-services.json
nativeResources/android/不要放入 assets)
Android 荣耀 / vivo
HONOR_APPID / VIVO_APPKEY / VIVO_APPID
nativeResources/android/manifestPlaceholders.json
iOS
timpush-configs.json(内容为 {"businessID":"您的证书 ID"}
nativeResources/ios/Resources/
对于荣耀 / vivo / FCM,还需编辑 uni_modules/TencentCloud-Push/utssdk/app-android/config.json,在 dependencies / plugins 中补充对应厂商依赖(FCM 需添加 com.google.gms.google-services 插件),详见 uni-app SDK 接入

步骤 4:制作自定义调试基座并运行

1. 在 HBuilderX 中单击运行 > 运行到手机或模拟器 > 制作自定义调试基座,使用云端证书分别制作 Android / iOS 自定义调试基座(鸿蒙端无需自定义基座)。
2. 基座制作完成后,运行到真机。
3. 注册成功后,将 App 切至后台,通过控制台推送服务 Push > 接入测试发送一条测试推送,设备收到推送即代表全流程跑通。

注意事项

隐私合规:请在 App 启动且用户同意隐私政策后调用 registerPush
调用顺序setRegistrationID 必须在 registerPush 之前调用才会生效;混用场景下其值须与 Chat 登录 userID 完全一致,否则会产生账号互踢导致推送丢失。
事件监听:Demo 通过 addPushListener 监听 EVENT.NOTIFICATION_CLICKED(通知点击)/ EVENT.MESSAGE_RECEIVED(在线推送)/ EVENT.MESSAGE_REVOKED(消息撤回),可参考 App.vue
基座要求:离线推送在标准基座下不可用;每次修改 nativeResources/ 或插件配置后,需重新制作自定义基座。

常见问题

标准基座上收不到推送:标准基座不包含厂商推送通道,请改用自定义调试基座运行。
自定义基座启动崩溃:检查 config.json 中厂商依赖 / 插件配置是否正确、nativeResources/ 配置文件是否放在正确路径。
收不到推送:确认已使用云端证书制作自定义基座;确认 timpush-configs.json 与厂商配置文件路径正确;使用控制台推送排查工具输入 RegistrationID 自查,并按 错误码 查询失败回调含义。

相关文档