- GP签名升级导致的微信分享签名不一致,可能的解决方案?
背景 GooglePlay 签名保护计划,默认推荐使用Google签名,导致 GooglePlay 安装的App最终使用的是 Google 签名;对于有多个渠道的App,不同渠道的签名不一致,但是微信开放平台一个应用只支持配置一个签名,Google渠道由于签名保护计划使用了Google生成的签名,导致微信分享提示签名不一致;Google提供了签名升级,升级为自己的签名,但微信分享还是提示签名不一致;原因 通过反编译 微信官方提供的签名工具(https://res.wx.qq.com/wxdoc/dist/assets/media/Gen_Signature_Android.e481f889.zip),发现微信获取三方App签名使用的是 PackageInfo.signatures 字段,该字段已被丢弃,在 v3签名包含多个签名时,获取到的是旧的签名;新版 Android SDK 推荐使用 PackageInfo.signingInfo.getApkContentsSigners() 和 PackageInfo.signingInfo.getSigningCertificateHistory(),会包含 v3 签名的多个签名信息;解决方案 微信开放平台支持一个App配置多个应用签名;签名验证过程替换新API做校验(原因部分提到的);总结 整体看下来,还是得微信官方来解决这个问题,我看微信开放社区很多人都遇到了该问题(有些是一年前提的问题,到目前没有满意答复),都没得到解决,希望微信官方能解决下这个问题,拜托🙏
2024-12-31 - 微信分享签名不一致?
我们Android App使用了微信分享,在后台配置了应用签名,上架了GooglePlay时使用了Google应用签名,导致分享时提示签名不一致,现在已升级为我们自己的签名(通过 apksigner 能查到新旧签名都有),还是提示签名不一致,目前猜测微信获取三方签名时还是拿到了旧的签名,想了解下微信获取三方应用的签名是调用的哪个系统API?
2024-12-30