uniapp 华为厂商推送设置保存时报“验证错误”如何解决?

在uniapp中配置华为厂商推送时,保存设置提示“验证错误”该如何解决?已经按照官方文档填写了AppID和AppSecret,但提交时依然报错。请问是否需要检查其他配置项?或者这个错误可能与华为后台的配置有关?

2 回复

检查推送配置参数是否正确,特别是AppID、AppSecret和推送证书。确保在华为开发者后台正确配置SHA256证书指纹,且与打包签名一致。


在UniApp中配置华为厂商推送时遇到“验证错误”,通常是由于参数填写不正确或配置不匹配导致的。以下是常见原因及解决方案:


1. 检查华为推送配置参数

  • App ID:在华为开发者联盟中创建应用时生成的ID。
  • App Secret:与App ID对应的密钥,需确保复制完整且无多余空格。
  • Package Name:必须与华为开发者后台和应用manifest.json中设置的包名完全一致。

示例manifest.json配置

{
  "app-plus": {
    "distribute": {
      "plugins": {
        "push": {
          "huawei": {
            "appid": "你的华为App ID",
            "appsecret": "你的华为App Secret"
          }
        }
      }
    }
  }
}

2. 验证包名一致性

  • 在华为开发者后台、UniApp项目的manifest.json以及打包时填写的包名必须完全相同。
  • 检查是否有大小写或拼写错误。

3. 检查签名证书

  • 华为推送要求使用签名证书文件(.jks或.keystore)。
  • 确保在华为开发者后台正确上传了签名证书的SHA256指纹。
  • 可通过以下命令获取指纹:
    keytool -list -v -keystore your_keystore_file.jks
    

4. 华为后台服务启用状态

  • 登录华为开发者联盟,进入“我的项目” > 选择应用 > “开发” > “Push服务”,确保服务状态为“已启用”。

5. 网络与权限问题

  • 确保服务器能正常访问华为推送接口(无网络拦截)。
  • 检查应用权限是否包含网络访问权限(AndroidManifest.xml中已自动配置)。

6. 重新生成配置文件

  • 如果以上步骤无误,尝试在华为后台重新生成App ID和App Secret,并更新到UniApp配置中。

总结步骤

  1. 核对华为后台与UniApp中的包名、App ID、App Secret。
  2. 验证签名证书SHA256指纹是否匹配。
  3. 确认华为推送服务已开启。
  4. 清理项目并重新打包测试。

若问题仍存在,可查看HBuilderX控制台或华为推送服务端的详细错误日志,进一步定位具体原因。

回到顶部