Android套件签名不匹配

时间:2018-10-24 05:48:11

标签: java android android-studio-3.2

我刚刚在Android Studio 3.2.1中导入了一个项目 并成功同步。导入的项目使用

android {
compileSdkVersion 27
defaultConfig {

    minSdkVersion 14
    targetSdkVersion 27
    versionCode 1
    versionName "1.4"
    testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}

现在我根据28更改了版本

android {
compileSdkVersion 28
defaultConfig {

    minSdkVersion 14
    targetSdkVersion 28
    versionCode 2
    versionName "2.1"
    testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}

所以我已经在智能手机中安装了应用程序。 当我尝试安装其给出的消息“程序包签名与先前安装的版本不匹配”时。最重要的是,我无法卸载该应用程序,我只需要更新它即可。我应该怎么做才能使其正常工作?

2 个答案:

答案 0 :(得分:0)

  

对APK进行签名时,签名工具会将公钥证书附加到APK上-对应用程序捆绑包进行签名时也是如此。公钥证书用作“指纹”,可将APK或应用程序捆绑包与您以及您相应的私钥唯一关联。这有助于Android确保以后对您的应用程序所做的任何更新都是真实的,并且均来自原始作者。用于创建此证书的密钥称为应用程序签名密钥。

     

密钥库是一个包含一个或多个私钥的二进制文件。

     

每个应用程序在其整个生命周期内都必须使用相同的证书,以便用户能够安装新版本作为应用程序的更新。

有关更多详细信息: Sign your app

答案 1 :(得分:0)

sudo mv /data/system/packages.xml /data/system/packages.bkp 重新启动