Android Crashlytics测试版:升级apk不同的签名

Android Crashlytics测试版:升级apk不同的签名,android,crashlytics,google-fabric,Android,Crashlytics,Google Fabric,我尝试使用Crashlytics beta版,但每次尝试安装(通过beta版应用程序)时,我都会收到“未安装应用程序”的消息 在我的设备中,我从Play store安装了1.0.0 在代码中进行了一些更改之后,我想发布1.0.1,因此我使用与存储中的apk(1.0.0)生成相同的发布密钥生成了新的apk 我一次又一次地听到“应用程序未安装” 我下载了apk(1.0.0),通过ADB安装 然后我尝试安装最新的apk(1.0.1)并获得: 安装\u失败\u更新\u不兼容:包com.xyx.xiang

我尝试使用Crashlytics beta版,但每次尝试安装(通过beta版应用程序)时,我都会收到“未安装应用程序”的消息

在我的设备中,我从Play store安装了1.0.0 在代码中进行了一些更改之后,我想发布1.0.1,因此我使用与存储中的apk(1.0.0)生成相同的发布密钥生成了新的apk

我一次又一次地听到“应用程序未安装”

我下载了apk(1.0.0),通过ADB安装 然后我尝试安装最新的apk(1.0.1)并获得:

安装\u失败\u更新\u不兼容:包com.xyx.xiang签名与以前安装的版本不匹配;无视

怎么可能呢???
感谢您的帮助

您无法通过Google Play apk安装构建的apk,因为它们总是有不同的签名。当您将apk上载到Google Play时,Google会使用您提供的原始应用程序签名密钥对apk进行重新签名,并将您的应用程序交付给用户。你可以在这里阅读:


因此,要测试更新,您需要APKv1.0.0和您的发布密钥(只需使用AS生成),并且新的v1.0.1也由AS生成和签名。这两个apk将具有相同的签名,但当您将v1.0.1 apk上载到市场时,它也将被重新签名。

Hi dantes_21,因此,换句话说,我无法使用play store安装的版本模拟升级??当我在应用程序中测试DB迁移时,我没有找到任何解决方案。所以我只是在用我的发布密钥签名的APK上进行了测试。这也是对更新的模拟,但使用您的发布密钥而不是Google Play的部署密钥,我的意思是您可以安装之前上传到Google Play的v1.0.0 apk(如果您将其保存在某处),并在其上安装新的v1.0.1 apk。当您稍后将新的apk上传到Market时,它的行为将类似于在Google Play中生成的更新,或者您可以在Google Play中使用Alpha和Beta测试。我没有测试它,但是它可能会工作。谢谢你的详细回答。似乎我的问题与谷歌play中的应用程序签名有关。我将对此进行调查,并与您分享更多详细信息