为什么在类路径更改后Android中的应用签名会发生变化?

esp*_*chi 4 android classpath reinstall

我有一个Android项目,分为三个不同的应用程序app-1,app-2并且app-3,它们应用了一些自定义.目前存在大量代码重复,使维护成为一场噩梦:在其中一个分支中进行更改,然后合并其他两个分支.

因此,我们创建了一个名为的库项目,app-core该项目将大部分重复的代码排除在外.到现在为止还挺好.

当我将其启动到已经加载应用程序的模拟器中时(在重构之前),我得到以下异常:

Re-installation failed due to different application signatures

一个不同的签名?但我只是在.classpath链接到app-coreJava项目中添加了一行!

主要问题是:现有用户是否也会受到这种困扰?

而旁边的问题:为什么它是一个不同的签名?

Com*_*are 12

数字签名由签署应用程序的计算机上存在的签名密钥驱动.如果开发人员A使用标准调试密钥编译应用程序并将其安装在模拟器中,则尝试安装应用程序的其他变体 - 一个使用生产密钥签名,一个使用开发人员B的调试密钥签名,等等.相同的模拟器,你会得到那个错误.

主要问题是:现有用户是否也会受到这种困扰?

您是否拥有用于现有用户所使用的应用程序版本的生产签名密钥?如果是,那么应该没有问题.如果不是,你就搞砸了.