版本管理:2019年11月26日首次发布
阅读指引:本文档按照“开通服务-接入服务-推送显示-其他”的思路进行整理,请按照您遇到问题的环节进行查找,或直接搜索本文档(Ctrl+F)。
Top问题:
当前我们对外提供的Push服务不收费。
1. 登录AppGallery Connect,选择需要查看的应用,点击API管理,查看Push开关是否处于打开状态,若为打开状态,则表明当前服务已经成功开通。
2. 检测推送服务参数是否处于开通状态,若服务状态显示为“已开通”,则表明该应用已开通Push服务。
1. 确认Push服务开通状态
请先检查是否已经成功开通Push服务,已经开通Push权益后重复开通会报错。
2. 包名重复
检查您的应用是否已经在应用市场中上传过,如已上传,请在“选择产品”中点击下拉框选择,不要点击“创建产品”。
检查应用是否已经在其他帐号中上传,如已上传,请到其他帐号中将应用删除或申请应用转移,应用转移相关文档和材料请参考文档“应用转移操作指南”。
3. 排除上述原因若还不能解决,请提供最新包名、APPID、企业名称和账号,提交在线提单,我们将在1-2个工作日处理。
应用认领会导致Push服务的失效和APPID的变化,需要重新申请Push服务并且更新之前应用的APPID。
应用转移对Push没有影响。
1. 设备:华为手机支持,非华为手机需安装HMS Core(APK)(APK可前往华为应用市场搜索下载);
2. 网络:手机处于联网且网络状态稳定;
3. EMUI版本:部分EMUI4.0、EMUI4.1,以及EMUI5.0及之后的华为手机,建议EMUI5.0以上;
受Android API的限制,海外低版本的华为手机和非华为手机推送只能在Android API level 21(Android 5.0)以上使用;
发送条数限制:每天向某个设备上某个App最多可发送3000条,超过后会被限流24小时,一天内发送超过10万条会直接封禁推送权益,需要整改并申报整改方案重新申请push权益。
发送速率限制:华为推送对推送速度的分配,主要依据App在华为终端上的月活、App在华为应用市场上架时的应用类型这两个要素进行计算分配。
应用QPS=App在华为终端上MAU(Monthly Active User)× 应用类别权重 × 整体分配系数(0.00072);
QPS:(Quantity per second) 表示1秒可以发送的推送条数;
应用在华为终端上MAU查询路径:华为开发者联盟->管理中心->应用市场->分析->选择应用->运营分析->推送服务->推送报告->推送用户详情->30日活跃用户数
应用类别:指的是应用在应用市场上架时选择的应用二级分类,查询路径:华为开发者联盟->应用市场->我的应用->选择应用->应用信息->应用分类->应用二级分类
应用类别权重列表:
分组名称 | 应用分类 | 权重系数 |
IM类 | 社交通讯 | 5 |
金融类 | 金融理财 | 5 |
新闻类 | 新闻阅读;资讯生活 | 4 |
内容类 | 图书阅读;影音娱乐;拍摄美化 | 3 |
电商类 | 购物比价 | 3 |
衣食住行类 | 便捷生活;出行导航;美食;旅游住宿 | 3 |
商务类 | 商务 | 3 |
游戏类 | 网络游戏;休闲益智;经营策略;棋牌 | 2 |
工具类 | 实用工具 | 1 |
运动健康类 | 医疗健康;运动健康 | 1 |
其他类 | 儿童;教育;主题个性;汽车 | 1 |
Default | Default(未上架) | 1 |
如您的应用通过QPS公式计算所得的值不足6000,将执行默认6000的QPS;同时,全网流量较高时,也会出现系统级流控(流控对应的状态码为HTTP 503)。
注意:QPS计算规则只适用于中国大陆。
透传消息:华为Push将消息送达手机后不做呈现,直接转给开发者的应用,由应用本身去解析消息和呈现内容。
通知消息:手机收到推送消息后由系统直接在通知中心下拉列表呈现的即时消息,终端用户点击对应的通知栏消息触发相应的动作,如打开应用、打开一个网页、打开应用内某界面。
可能原因:
发送消息类型。若消息类型为透传消息,在应用进程被杀死时消息可能无法送达;
终端与网络状况。确保终端处于稳定网络下,且设置了允许通知;
EMUI版本。检查手机EMUI版本,EMUI版本低于4.1或者HMS Core(APK)版本较低均不支持展示推送消息;
检查手机是否为EMUI8.0系统,如果是早期的EMUI8.0,编译构建App时targetSdkVersion需保证低于26,或者进行系统升级(设置—系统—软件更新,不同手机型号导航可能略有差异);
排除限流情况。每天可向单个设备最多发送3000条,超过后会被限流24小时,超过10万条会直接封禁推送权益;
缓存问题。HMS Core(APK)的缓存问题,清理应用和HMS Core(APK)数据及缓存,重启手机测试。
检查终端token是否正确。尝试在AppGallery Connect进行推送,如果AppGallery Connect后台也推送失败则是token已失效、或者手机配置有问题,需进行token检查和手机权限设置。如果能推送成功,则为调用接口时参数配置错误导致。
检查服务端封装的消息体格式。建议参考服务端API进行消息体字段排查。
若以上原因排除后仍无法定位问题,请搜集日志,将日志文件及问题描述反馈到:在线提单
[问题4]终端设备上如何抓取日志?
1. Adb连上手机后,分别执行下面命令
adb shell setprop log.tag.hwpush VERBOSE
adb logcat -v threadtime 1> D:\hwpush.log
2. 复现问题场景
3. 按Ctrl+c完成
同时请您尽可能记录出现问题的设备型号、EMUI版本号、HMS Core(APK)版本号、集成的SDK版本号以及复现问题的步骤,以便技术人员可以更快的为您进行技术定位。
现象描述
传入的参数错误。
原因分析
检查agconnect-services.json文件中的app_id、package_name参数是否正确。
检查build.gradle文件中证书签名是否配置。
有可能是HMS Core(APK)缓存导致的,卸载并重新更新HMS Core(APK),然后断开网络再连接,再打开App。
建议用华为终端先测试,华为推送会依赖HMS Core(APK),在华为手机上都会预装这个应用,非华为手机上没有预装。
现象描述
调用网关查询应用scope失败。
原因分析
如果开发者App集成的Push SDK是2.5.2.0版本,检查一下配置appid的地方,去掉“appid=”,如果不是2.5.2.0这个版本不需要关注。
在应用管理里找到HMS Core(APK)并卸载掉(如果应用管理里边查不到,可以通过显示系统进程中来查找),如果应用正确集成了Push SDK,打开App后会提示下载HMS Core(APK),安装后再测试,如果没正确集成请在华为应用市场手动搜索HMS Core安装后再测试。
登录AppGallery Connect网站,查看Push服务状态是否已开通。
检查网络状况是否正常,建议使用4G数据网络测试。
现象描述
指纹证书配置不一致。
原因分析
确认证书指纹端云配置一致。客户端App打包的证书和在AppGallery Connect网站上应用配置的“SHA256证书指纹”一致。
HMS Core(APK)会缓存签名文件,需在应用管理中找到HMS Core(APK)清理掉缓存数据,然后重新打开开发者应用尝试之前的操作。
现象描述
下发消息给指定的用户(token)报无权限。
原因分析
登录AppGallery Connect网站,查看Push服务状态是否已开通
如果集成的是SDK2.0版本把获取到的AT(access token)里的转义字符(\)去掉后再进行Url Encode编码。(编码常用网址为http://tool.chinaz.com/Tools/urlencode.aspx)
token非对应应用拥有的
token非对应应用拥有的检查msg type是否传递的是1或者3,传递2暂时是不支持的。
如果是国内推送正常,而在海外服务器推送返回80300002码,需要开通海外的Push权益。找到我的应用后禁用Push服务,重新启用Push服务。提示:如果只开通Push服务,请先去应用市场上传一个apk,保存草稿状态即可,不然重新添加的时候可能无法找到原来的应用。
检查发送消息体中内容是否有输入错误。
可以在Push控制台先推送消息测试下,如果成功,就是接口调用出错了。
现象描述
指定的token无效。
原因分析
同一个设备,不同的应用,token应该是不一样,容易误传递同样的值。
客户端App配置的应用包名、应用id与AppGallery Connect网站上申请的不一致。
检查获取认证Token 的URL是否正确:https://login.cloud.huawei.com/oauth2/v2/token
检查消息发送的URL是否正确:[SDK 2.0] https://api.push.hicloud.com/pushsend.do [SDK 3.0+] https://push-api.cloud.huawei.com/v1/[appId]/messages:send
a. 统计报表查看路径:华为开发者联盟 - 应用市场 - 分析 – 选择相应的应用 – 运营分析
b. 历史报表查看:
由于业务升级,历史报表数据无法在AppGallery Connect上进行查看,若您需要查看历史发送数据,请按照下面的操作路径指导进行查看:
登录华为开发者联盟管理台,点击链接:https://developer.huawei.com/consumer/cn/console#/myReport/push
c. 统计报表规则:当前报表不是实时更新,统计数据会有1天的延迟;
d. 报表数据条目解释:

发送量:指的是该营销任务圈中的设备数。
应用被卸载:用户已经卸载该应用,未重装。
无效Token:消息发送到终端之后由于token无效不会展示(如应用卸载后重装未激活)。
用户拒绝接受:用户关闭了应用的消息通知权限。
沉默设备丢弃:设备超过30天没有联网,会定义为沉默设备,沉默设备无法接收推送消息。
频控丢弃量:针对单用户消息发送超过3000条/天,超过部分会被丢弃。
缓存量: 消息目标设备离线,消息仍在有效期内。
过期量:消息目标设备离线,设备在消息有效期内一直没上线。
送达量:消息成功送达设备的数量。
点击量:用户点击推送消息的数量。
送达率:送达量/发送量。
点击率:点击量/送达量。
当前对开发者开放的特殊权限申请范围如下:
| 权限名称 | 功能描述 | 申请条件 |
消息常驻[Beta] | 用户在通知中心点击通知消息后,消息仍旧保留在通知中心,只有当用户在通知中心主动清理时,消息才会被清除。 | 企业内部App,如企业内部沟通软件、管理系统等,且企业App用户规模≥500人。 |
高优先级透传消息[Beta] | 透传消息到达用户设备后,直接唤醒应用。 | 企业内部具备VoIP电话功能场景的沟通类、告警类App,且VoIP为App的主要功能。 |
语音播报[Beta] | 消息到达后,唤醒应用执行语音播报动作。 | 有语音播报功能使用场景的应用。 |
高级别通知栏消息[Beta] | 通知栏消息会额外以横幅样式展示。 注意:该权限评审流程预计耗时4个月。权限开通后,用户下载应用,则默认打开横幅通知,但已经安装应用的用户仍需在通知设置中自行打开横幅通知。 | 企业内部App,如企业内部沟通软件、管理系统等,且企业App用户规模≥500人。 |
申请指导:
请提供如下信息到hwpush@huawei.com进行申请,我们会在15个工作日内回复申请结果,请您留意邮箱消息。
邮件主题:【特殊权益申请】- (应用名称)
邮件正文:申请权限名称、应用名称、应用包名、AppID、使用场景、消息展示截图(展示需要特殊权限的通知消息截图,如VoIP电话界面等)
示例申请模板:
邮件主题:【特殊权益申请】 - Welink
邮件正文:
申请权限名称:消息常驻
应用名称:Welink
应用包名:welink.huawei.com
AppID:1282412
使用场景:Welink是企业内部沟通软件,会发送会议等消息提醒,希望借助消息常驻功能,实现会议、日历等通知点击后常驻,以满足用户反复查看的需求。
消息展示截图:附带对应的截图,要求如下:
申请权益为“消息常驻”,需要附带通知消息展示截图。
申请权益为“高级别通知栏消息”,需要附带各推送场景下横幅消息通知截图,如IM类消息截图、审批类消息截图等。
申请权益为“高优先级透传消息”,需要附带VoIP通话界面截图。
申请权益为“语音播报”,需要附带语音消息通知展示截图。
请先在本页面进行问题搜索,初步排查问题
若问题无法解决,请通过在线提单向我们提供日志
咨询QQ群:479885189