华为推送通道集成指南

华为推送通道是由华为官方提供的系统级推送通道。在华为手机上,推送消息能够通过华为的系统通道抵达终端,并且无需打开应用就能够收到推送。

注意事项:

  1. 华为推送只有在签名发布包环境下才可以收到推送消息

  2. 华为手机中的移动推送服务,必须升级到 2.5.3 以上版本,华为通道会注册失败(依旧走信鸽通道)。

获取华为推送密钥

1.访问 华为开放平台

2.注册/登录开发者账号。(如果您是新注册账号,需进行实名认证)

3.在华为推送平台中新建应用。注意:应用包名需跟您在信鸽填写的包名保持一致

4.获取应用相关的信息,并且将这些信息复制,填入信鸽管理台的应用配置-厂商&海外通栏目中, 这些信息是AppIDAppSecret 如下图所示:

配置SHA256证书指纹

[配置示例]

获取SHA256证书指纹方法请参照 华为推送接入文档

集成指南

AndroidStudio集成方法

在app模块下的build.gradle文件内先配置好信鸽所需要的配置之后再增加以下的华为节点:

1.配置华为APPID

2.导入华为推送相关依赖

Eclipes集成方法

1.导入华为推送相关jar包 1) 3.X版本:将HMSSdkBase_*.jarHMSSdkPush_*.jar放在libs文件夹。 2) 4.X版本将XG4HWPush.jar放在libs文件夹。

2.在 Androidmanifest.xml 文件中新增如下配置:

3.在 AndroidManifest.xml 增加 Receiver 配置如下:

启动华为推送以及注册日志

  • 在调用信鸽(XGPushManager.registerPush)之前开启第三方推送接口:

注册成功的日志如下:

如果日志中出现:

请在注册代码之前调用:

并手动确认给应用存储权限,然后查看SD卡目录下的 google.txt 文件内输出的注册华为失败的错误原因。 然后根据 华为开发文档 对应的错误码查找原因,以及解决办法。

若还不能解决,可以在cmd里执行adb shell setprop log.tag.hwpush VERBOSEadb shell logcat -v time > D:/log.txt 开始抓日志,然后进行测试,测完再关闭cmd窗口。将log发给我们的技术支持。

注: 1. 华为通道不支持抵达回调,支持点击回调(需要自定义参数),支持透传(忽略自定义参数,但不保证到达),如果需要通过点击回调获取参数或者跳转自定义页面,可以通过使用Intent来实现,点击查看教程

2. 如遇到发布华为应用市场,发布应用时审核不通过显示“错误:28: 集成 HMS 需要将证书文件打包到 APK 中,请直接将 assets 目录拷贝到应用工程根目录”。 解决办法:下载华为官方 HMS SDK,将 assets 目录下的所有文件及子目录拷贝到开发者 App 工程的同名目录下。如果目录不存在,请先创建。

代码混淆

厂商通道测试方法

  1. 在您的App中集成信鸽V3.2.1以上版本的SDK,并且按照「厂商通道集成指南」集成所需的厂商SDK

  2. 确认已在信鸽管理台中「应用配置-厂商&海外通道」中填写相关的应用信息。通常,相关配置将在1个小时后生效,请您耐心等待,在生效后再进行下一个步骤

  3. 将集成好的App(测试版本)安装在测试机上,并且运行App

  4. 保持App在前台运行,尝试对设备进行单推/全推

  5. 如果应用收到消息,将App退到后台,并且杀掉所有App进程

  6. 再次进行单推/全推,如果能够收到推送,则表明厂商通道集成成功

Last updated

Was this helpful?