我有一个奇怪的问题,即我的调试版本可以正常运行,但是在我签名并生成了一个应用程序包并将其上传到Play商店后,该应用程序立即崩溃了(我在装有应用程序商店版本的手机上运行了LogCat并且我发现它与AndroidX ConstraintLayout有关,但没有办法重现。我认为release
和debug
版本之间存在一些差异,因此我开始调试发布版本。
不过,这样做时,Android Studio无法安装APK,并显示以下错误:
安装失败,并显示消息INSTALL_PARSE_FAILED_NO_CERTIFICATES:
软件包/data/app/vmdl1900556551.tmp/base.apk在以下位置没有证书
条目AndroidManifest.xml。这个问题有可能解决
通过卸载apk的现有版本(如果存在),以及
然后重新安装。
警告:卸载将删除应用程序数据!
您要卸载现有的应用程序吗?
我的app.gradle
中有签名配置,它使用与我签名并发布的应用程序相同的数据:
android {
signingConfigs {
defaultConfig {
keyAlias 'solaredge-notifier'
keyPassword '******'
storeFile file('/path/to/KeyStore.jks')
storePassword '*****'
}
}
compileSdkVersion 28
defaultConfig {
applicationId "nl.friesoft.solaredgenotifier"
minSdkVersion 23
targetSdkVersion 27
versionCode 2
versionName "1.1"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
debuggable true
signingConfig signingConfigs.defaultConfig
}
}
}
我现在在这里有点迷失了(坦率地说,因为我已经在Play商店上发布了一个崩溃的应用,所以有点生气)。
如果您想查看在线应用程序,请访问:https://play.google.com/store/apps/details?id=nl.friesoft.solaredgenotifier&hl=en
最佳答案
在(重新)生成证书之前,请尝试以下操作:
您设备的Android SDK版本是否在minSdkVersion和compileSdkVersion指定的范围内?
至少您设备的SDK版本必须符合minSdkVersion。
试试吧。从我的经验来看,当我部署到minSdkVersion和compileSdkVersion范围以外的SDK版本的设备时,出现以下错误:
“无法安装该应用程序:INSTALL_PARSE_FAILED_NO_CERTIFICATES”。
我修改了范围,以包括设备的SDK版本和voilà!
关于android - 在发行版上INSTALL_PARSE_FAILED_NO_CERTIFICATES,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/54736276/