uni app push 集成华为 及 调试

参考:

关于华为手机,Unipush收到不到离线消息问题 - DCloud问答

生成华为需要的SHA256指纹签名 - 简书

Unipush收到不到离线消息,搞了一个星期了,现在把处理过程说一下,

1、一定要在华为开发者后台,设置 256位hash签名.

        获得SHA256,先找到自己的android证书文件,使用keytool工具获取SHA256

keytool -list -v -keystore C:\Users\Administrator\Desktop\收藏\test.keystore

          输入密码

        

 把SHA256 录入到

​​​​​​华为开发者联盟

 设置签名后,不会立即生效,我设置后一天多才生效。

2、开发测试,调式基座(包括自定义调式基座)是收不到离线推送消息的。(这是个坑,浪费了很多时间)

        你先到华为后台,手动推送一下息信,看看能不能收到,注意事项:1、app不能用调式版本。自动定调试基座也是不行的。一定要打包一个发行版安装打开APP。然后再把APP退出,从华为后台手工推送,看看能不能收到离线信息。

        2、devicetoken值不要搞错了!按照上面的方法拿到华为的push token。

3、直接在华为后台到发送推送时,关于华为开发者后台报token不合法提示,是因为cid不对。
正确查看华为的token: 在Unipush后台:

devicetoken的值去掉HW_后才是真正的为华为的推送token ,
如:ANVE_xPGHryUp718bK3SNj8CQ........

4、手机端收到离线推送后,被系统分类成:营销通知,不响铃,不会在手机状态栏显示。只在状态栏下拉中显示有推送的消息。

这个问题我还没搞定。

### 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`),实际部署前应替换为真实的认证凭证。 请注意,以上示例仅适用于说明目的;真实环境中还需要考虑更多细节因素,比如错误处理机制以及安全性措施等。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值