我一直在使用 Eclipse 开发 Android 应用程序,最近我迁移到了 Android Studio。从 Eclipse 导出的 apk 和从 Android Studio 导出的 apk 具有不一致的证书,但使用相同的 keystore 和别名进行签名。 (我得到 [INSTALL_PARSE_FAILED_INCONSISTENT_CERTIFICATES]
如果我尝试在另一个之上安装一个)
为了验证证书,我在两个 apk 上运行了命令 jarsigner -verify -verbose
(来自 this answer )并且输出是相同的,除了时间戳。
我还通过提取并运行 openssl pkcs7 -inform des -in CERT.RSA -out decrypted.txt -print_certs - 检查了每个 apk 中的
(来自 this answer )也具有相同的输出。META-INF/CERT.RSA
文本
我尝试了两次迁移项目,一次是将 Eclipse 项目直接导入 Android Studio,另一次是从 Eclipse 导出 gradle 构建文件并将 gradle 项目导入 Android Studio。两者产生相同的结果。
我的应用程序依赖于一个 android 库,它是 Eclipse 中的一个单独项目。在 Android Studio 中,应用程序和库是同一项目中的两个模块。这会影响证书检查吗?
除了证书本身,还有什么可能导致证书不一致错误?
(我在 Ubuntu 系统上使用 Eclipse Luna 4.4.1 和 ADT 23.0.4、Android Studio 1.0.1 和 Oracle Java JDK 7。)
最佳答案
您是否尝试过手动签署您的 APK?
关于android - 从 Eclipse 迁移到 Android Studio,证书不一致,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28327630/