unipush 可以直接在 manifest.json 引入
集成的是个推
注意事项:
1,如果有之前的项目购买过个推的 VIP 可以在 DClound 创建 Unipush 后联系客服升级为 VIP 通道。
2,厂商通道尽量适配,参考文档
3,unipush2.0 不支持以前的接口推送方式,所有的推送都要走云函数,需要将之前的接口替换成云函数的 URL 化方式。使用方式也简单参考云函数文档配置即可。
4,集成后需要重新云打包
5,云函数创建后部署上线,注意需要自创三张表在 Dcloud 后台
uni-push 2.0 快速接入指南:https://ask.dcloud.net.cn/article/40283
uni-push 2.0 常见问题:https://ask.dcloud.net.cn/article/40291
// 简单的使用示例
'use strict';
const uniPush = uniCloud.getPushManager({appId:"__UNI__BBB5FXX"}) //注意这里需要传入你的应用appId
exports.main = async (event) => {
let obj = JSON.parse(event.body)
const res = await uniPush.sendMessage({
"push_clientid": obj.cids, // 设备id,支持多个以数组的形式指定多个设备,如["cid-1","cid-2"],数组长度不大于1000
"title": obj.title, // 标题
"content": obj.content, // 内容
"payload": obj.payload, // 数据
"category": obj.category, // HarmonyOS NEXT系统(纯血鸿蒙、非安卓鸿蒙)的消息分类,要给鸿蒙设备推送时才必传
"force_notification": true, //填写true,客户端就会对在线消息自动创建“通知栏消息”,不填写则需要客户端自己处理。
"request_id": obj.request_id ,//请求唯一标识号,10-32位之间;如果request_id重复,会导致消息丢失
"options":obj.options //消息分类,没申请可以不传这个参数
})
return res;
};
调用示例:
curl --location --request POST '[https://fc-mp-f017d899-3fe9-4159-b95e-f2441c012193.next.bspapp.com/push](https://fc-mp-f017d899-3fe9-4159-b95e-f2441c012193.next.bspapp.com/push)' \ --header 'Content-Type: application/json' \ --data-raw '{ "request_id": "212320028909901112", "cids": "cd26cea774d102143185b50cb46b3540", "title": "apifox发送的标题", "content": "apifox发送的通知内容 ", "options": { "HW": { "/message/android/target_user_type": 1 }, "HO": { "/android/targetUserType": 1 }, "VV": { "/pushMode": 1 }, "XM": { "/extra.channel_id": "123123" } }, "category": { "harmony": "MARKETING" }, "payload": { "data1": 1, "data2": 2 } }'