unipush配置华为通道

博主在开发uniapp项目时遇到华为推送UNIPUSH在未通过应用审核的情况下无法接收到消息的问题。经过一系列尝试和排查,最终发现只需在华为开发者平台上创建应用并获取相关参数,然后在UNIPUSH的厂商通道配置这些参数,即可成功实现离线推送。详细步骤包括创建项目、添加应用、填写包名等,简化了原本复杂的过程。

   最近开发一个uniapp项目,使用unipush为消息推送,但在华为通道上怎么也收不到,真是见鬼,因只想使用华为的离线推送,不想在华为应用市场上架,所以不想进行应用审核。难道不审核就无法使用此应用?可明明有人说,应用不用审核也可以走华为的厂商通道推送消息的。在unipush厂商通道里,把AppID、AppSecret、PkgName、上传agconnect-services.json等全部都做了,可就是接收不到消息,但只要打开app就收到消息,最初怀疑是后台调用时使用的模板问题,那换成穿透模板,唉,还是不行。这么做,那么做也不行,前台、后台、模板、厂商通道的参数,所有涉及的环节都折腾了好几遍,不行就是不行,搞得我都有点怀疑人生。

       今天有些时间,我试试unipush的一个示例项目【V2】unipush的uniCloud版【系统消息中心】【华为、小米离线角标】在配置这个项目的推送时,先建项目,建完项目后,看到上面有一个添加应用的按钮,直接点它创建应用,把应用名称包名填写上,点保存,自动跳转到设置sdk界面,不是原生开发,返回到项目列表,点开项目,找到应用,将相关参数填写到unipush的厂商通道里就ok了,原来就这么简单,搞得我折腾到怀疑人生!!!

下面看步骤:

1.创建项目,自动到项目设置,点击添加应用

2.进入到添加应用,这里关键把包名填写好,华为的推送是按应用的包名识别的

3.添加完成后,因不是原生开发,不用管它,直接返回,点开刚才新建的项目,看到项目信息,找到以下参数,填写到unipush的华为厂商通道中。

4.在unipush厂商通道中将上面的信息配置进去,ok了,很快,配置完成后就能使用了

### Uni Push 1.0 中针对华为设备的消息分类推送 在 Uni Push 1.0 版本中,为了实现针对华为设备的消息分类推送,开发者需遵循特定配置流程来确保消息能够成功发送并被目标设备接收到。具体而言,在集成过程中需要注意以下几点: #### 配置华为推送服务 首先,确保已按照官方文档完成华为推送服务的基础设置工作[^2]。这包括但不限于获取 `AppID`、`AppSecret` 及 `PkgName` 参数,并上传必要的文件如 `agconnect-services.json`。 对于未上线至华为应用市场的应用程序来说,虽然理论上无需通过正式的应用审核即可利用厂商通道进行消息推送,但实际上可能遇到一些限制或兼容性问题。因此建议尽可能满足平台的要求以提高成功率。 #### 设置消息类别与标签 要实现基于类别的精准推送,可以在构建推送请求时指定相应的属性字段。例如,可以通过设定不同的 topic 或 tag 来区分不同类型的通知对象。下面是一个简单的 Python 脚本片段用于展示如何向特定主题下的用户群组发送自定义内容的消息: ```python import requests from json import dumps def send_push_message(topic, message_body): url = "https://api.push.hicloud.com/pushsend.do" headers = { 'Content-Type': 'application/json', 'Authorization': 'Bearer YOUR_ACCESS_TOKEN' } payload = { "validate_only": False, "message": { "notification": { "title": "新消息提醒", "body": f"{message_body}" }, "android": { "ttl": "7200s", "collapse_key": "-1", "urgency": "HIGH" } }, "topic": { "topics":[f"/topics/{topic}"] } } response = requests.post(url=url, data=dumps(payload), headers=headers) return response.status_code == 200 if __name__ == '__main__': result = send_push_message('sports', '今晚有重要比赛') print(f'Message sent successfully? :{result}') ``` 上述代码展示了如何创建一个 HTTP POST 请求到华为云服务器端口 `/pushsend.do` 并附带所需的信息体。这里假设已经获得了有效的访问令牌 (`YOUR_ACCESS_TOKEN`),实际部署前应替换为真实的认证凭证。 请注意,以上示例仅适用于说明目的;真实环境中还需要考虑更多细节因素,比如错误处理机制以及安全性措施等。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值