You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

应用发布至AppGallery后Huawei Push Kit无法正常工作的原因咨询

华为Push Kit发布后无法接收推送的原因分析与解决办法

我来帮你排查这个问题,这种Android Studio直接运行正常、但AppGallery发布版本收不到推送的情况,通常是以下几个关键环节出了问题:

  • 签名指纹不匹配
    Android Studio调试时用的是调试签名文件(一般是debug.keystore),而发布到AppGallery的版本用的是正式发布签名。华为Push Kit需要在AppGallery Connect后台配置对应签名的SHA256指纹,如果后台只配置了调试签名的指纹,发布版本的签名校验不通过,就会导致推送无法送达。
    解决办法:把你用于发布的签名文件的SHA256指纹添加到AppGallery Connect的项目设置中,确保和发布包的签名完全一致。

  • 混淆规则遗漏
    发布版本一般会开启代码混淆,如果你的proguard-rules.pro文件中没有添加华为Push Kit的混淆豁免规则,相关的推送类会被混淆破坏,导致功能失效。
    解决办法:在混淆规则里添加以下内容:

    -ignorewarnings
    -keepattributes *Annotation*
    -keepattributes Exceptions
    -keepattributes InnerClasses
    -keepattributes Signature
    -keepattributes SourceFile,LineNumberTable
    -keep class com.huawei.hms.** {*;}
    -keep interface com.huawei.hms.** {*;}
    
  • agconnect-services.json未同步
    如果发布前没有将AppGallery Connect后台最新生成的agconnect-services.json文件替换到你的发布包工程中,或者后台的应用配置(比如包名、签名信息)更新后没有重新下载配置文件,会导致发布包和后台配置不匹配,推送服务无法正常初始化。
    解决办法:重新从AppGallery Connect下载最新的agconnect-services.json,替换到工程的app模块根目录下,再重新打包发布。

  • 推送权限未正确配置
    对于Android 13及以上版本,需要申请POST_NOTIFICATIONS权限才能显示推送通知。Android Studio调试时可能自动帮你处理了权限申请,但发布版本需要在Manifest中声明权限,并在代码中动态申请。
    解决办法:在AndroidManifest.xml中添加权限声明:

    <uses-permission android:name="android.permission.POST_NOTIFICATIONS" />
    

    同时在应用启动或合适时机动态申请该权限。

  • HMS Core版本兼容性问题
    部分用户设备上的HMS Core版本过低,或者未安装HMS Core,而你的测试设备上的HMS Core版本是兼容的,导致发布版本无法正常和推送服务通信。
    解决办法:可以在应用中添加HMS Core版本检测逻辑,提示用户更新到兼容的HMS Core版本;同时确保你集成的Push Kit版本和目标设备的HMS Core版本兼容。

内容的提问来源于stack exchange,提问作者Faizan Ahmad

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.30 15:37:35