每当我尝试将我的即时应用apks上传到Play商店时,都会出现以下错误:
但是,每当我执行https://developers.google.com/digital-asset-links/tools/generator时,它都会成功与我的应用和网站相关联。知道为什么我会收到这个错误吗?可能导致这种情况的原因是什么?
提前感谢您的帮助。
答案 0 :(得分:11)
请检查Google Play控制台是否启用了Google Play App Signing。
如果启用了Google Play App Signing,Google Play控制台将使用发布密钥替换您的应用密钥。
您在Android Studio上设置的密钥被视为上传密钥。
因此,您需要使用发布密钥修改assetlinks.json
。
答案 1 :(得分:9)
当我从调试密钥而不是发布密钥生成assetlinks.json文件时,发生了这种情况。它在Android Studio中显示为已验证,然后在服务器上失败。仔细检查签名配置对于资产链接文件是否正确,以及文件中的指纹是否与释放密钥的SHA256指纹匹配。您可以通过运行
获取发布密钥的指纹 keytool -list -v -keystore ~/my_keystore.jks
另一个原因可能是您启用了Play签名。在这种情况下,您必须使用开发人员控制台中提供的指纹,而不是您在本地签署APK的密钥(本地一个称为您的"上传密钥")。这在Android Studio中根本不显而易见,因为它的资产链接文件生成器不会为您提供放入自定义指纹的选项。
答案 2 :(得分:6)
请检查您的网站资产链接文件是否不支持某种形式的身份验证,内部IP或防火墙阻止。如果无法公开访问,则Play商店开发者控制台无法访问数字资产链接文件。
也就是说,请仔细检查是否可以从外部网络访问java.lang.NullPointerException:
at android.widget.Editor$SuggestionsPopupWindow.initContentView(Editor.java:3729)
at android.widget.Editor$PinnedPopupWindow.<init>(Editor.java:3390)
at android.widget.Editor$SuggestionsPopupWindow.<init>(Editor.java:3675)
at android.widget.Editor.replace(Editor.java:431)
at android.widget.Editor$3.run(Editor.java:2354)
at android.os.Handler.handleCallback(Handler.java:751)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:154)
at android.app.ActivityThread.main(ActivityThread.java:6776)
at java.lang.reflect.Method.invoke(Native Method:0)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1520)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1410)
(切换到公共wifi并验证json文件是否可以正确加载)。
答案 3 :(得分:0)
如Jarrod在评论中所说,如果其他所有方法均失败,则放弃分阶段发布并重新上传APK。刚才为我工作。