0

我有一个应用程序,当我使用文件管理器应用程序或使用 Android adb 工具将应用程序包(apk 文件)安装到 Android 12 设备时,应用程序链接正确地自动验证。

但是,当我从 Google Play 商店应用程序下载该应用程序的内部测试版时,应用程序链接不会自动验证。

这是已知的 Android 测试版错误还是有任何解决方法?其他开发人员是否在您的应用程序中遇到过此问题?

只是为了确认-我已经设置了assetlinks.json和AndroidManifest.xml,以便自动验证应用程序链接,并且在使用文件管理器或adb工具安装apk时它们可以正常工作。

4

1 回答 1

0

事实证明,问题是由于 Google Play 签名使用的证书与用于上传/签署上传到 Play 商店的 apk 的证书不同。

我从 Google Play 控制台的应用程序下载部分下载了原始应用程序包以及处理/分发的应用程序包。

然后,我使用 keytool 命令比较了两个包的应用程序签名证书的 SHA256 签名,例如“keytool -printcert -jarfile 46286-1.apk”。

我注意到分发 apk 的 SHA256 签名与最初上传的 apk 不同。托管在 assetslinks.json 中的 SHA256 签名与原始 apk 的签名相匹配。

这解释了为什么深层链接在原始 apk 文件上有效,但在从 Google Play 商店安装应用程序时无效。

于 2021-09-29T08:10:41.257 回答