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

上传至Google Play后LinkedIn登录失败(本地Release APK正常)

解决Google Play上传后LinkedIn登录失败的问题

嘿,这个问题我帮不少开发者排查过,核心症结几乎都是Google Play的应用签名机制搞的鬼!本地测试时用的是你自己的签名证书,哈希值和LinkedIn后台配置匹配,所以登录正常;但上传到Google Play后,如果你开启了「App Signing by Google Play」,Google会替换你的应用签名,这时候线上包的哈希值就和你之前配置的不一样了,自然会抛出那个「bundle id or package name / hash are invalid」的错误。

下面是一步步的解决步骤:

  • 第一步:确认是否启用了Google Play应用签名
    打开Google Play Console,找到你的应用,进入「发布」>「设置」>「应用签名」页面。如果看到「应用签名证书」和「上传证书」是两个不同的条目,说明Google已经在替你管理应用签名了,这时候必须用「应用签名证书」的哈希值去更新LinkedIn配置。

  • 第二步:获取Google Play签名的Base64哈希值
    LinkedIn要求的哈希是签名证书的SHA-1(或SHA-256)转换为Base64格式的字符串,你需要这么做:

    1. 在Google Play Console的「应用签名」页面,复制「应用签名证书」的SHA-1(或者SHA-256,LinkedIn两者都支持,选一个就行)值,注意去掉所有冒号,变成连续的十六进制字符串。
    2. 用命令行把这个十六进制字符串转成Base64:
      # 假设你的SHA-1是 AA:BB:CC:DD...,去掉冒号后是 AABBCCDD...
      echo -n "AABBCCDD..." | xxd -r -p | base64
      
      执行后得到的字符串就是LinkedIn需要的哈希值。
  • 第三步:更新LinkedIn开发者后台的配置
    登录LinkedIn Developer Portal,找到你的应用:

    1. 进入「Auth」>「OAuth 2.0 settings」页面。
    2. 找到「Mobile」部分的「Package name」和「Hash」字段,确保包名和你Google Play上的完全一致(大小写、拼写都不能错)。
    3. 把刚才生成的Base64哈希值填到「Hash」字段里,保存更改。
  • 第四步:验证测试
    等LinkedIn的配置生效(一般几分钟就好),然后去Google Play重新下载你的应用,清理应用缓存后再测试LinkedIn登录,应该就能正常使用了。

额外提醒:如果是上传AAB格式的安装包,本地测试用的debug签名和线上的Google签名差异更大,一定要确保LinkedIn后台用的是Google提供的签名哈希,而不是你本地的release或debug签名哈希。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.29 06:57:56