当前位置: 首页 > 知识库问答 >
问题:

INSTALL_PARSE_FAILED_NO_CERTIFICATES发布版本

高英彦
2023-03-14

我有一个奇怪的问题,我的调试版本工作正常,但是在签署并生成一个应用程序包后,我将其上传到Play商店,该应用程序立即崩溃(我在具有我的应用程序的商店版本的手机上运行LogCat,我看到它与AndroidX ConstraintLayout有关,但无法复制它)。我认为发布debug版本之间有一些区别,所以我开始调试我的发布版本。

当我这样做时,Android Studio无法安装APK,出现以下错误:

安装失败,消息INSTALL_PARSE_FAILED_NO_CERTIFICATES:包 /data/app/vmdl1900556551.tmp/base.apk在入口AndroidM没有证书anifest.xml.解决此问题的方法可能是卸载现有版本的apk(如果存在),然后重新安装。

警告:卸载将删除应用程序数据!

是否要卸载现有应用程序?

我的应用程序中有签名配置。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商店上发布了一个崩溃的应用程序)。

如果您想查看live app,请点击此处:https://play.google.com/store/apps/details?id=nl.friesoft.solaredgenotifier

共有2个答案

秦昊穹
2023-03-14

生成签名apk的步骤:

1–生成版本未签名apk。

2-使用命令提示符Zip对齐无符号APK。

zipalign -v -p 4 my-app-unsigned.apk my-app-unsigned-aligned.apk

3–通过命令提示符使用应用程序签名者使用Sonim私钥对APK进行签名。

apksigner sign --ks my-release-key.jks --out my-app-release.apk my-app-unsigned-aligned.apk

4–安装已签名的apk-in设备。

乐山
2023-03-14

在(重新)生成证书之前,请尝试以下操作:

您设备的Android SDK版本是否在minSdkVersion和compileSdkVersion指定的范围内?

至少你的设备的SDK版本必须符合MinSDK版本。

试试看。根据我的经验,当我部署到SDK版本在minSdkVersion和compileSdkVersion范围之外的设备上时,我遇到了以下错误:“无法安装应用程序:INSTALL\u PARSE\u FAILED\u NO\u CERTIFICATES”。

我修改了范围以包括我设备的SDK版本,瞧!

 类似资料:
  • 版本号 采用三位版本号,分别是主版本号、次版本号、修订版本号。例如 5.1.2。 参见: http://semver.org/lang/zh-CN/。 主版本号:主版本号内的所有版本必须相互兼容;与其它主版本号不一定完全兼容,尽量向下兼容。 次版本号:代表新特性增强。版本号越大特性越丰富。 修订版本号:代表BugFix版本。只做bug修复使用,版本号越大越稳定。 版本维护 最多同时维护两个版本。

  • 本页介绍了 MOSN 的 版本发布步骤。 MOSN 版本发布步骤 一、冻结代码 在准备一个版本发布期间,停止代码往 master 分支的合并 二、整理 Release notes 基于 Github 的 PullRequest 记录,整理本次发布的内容与上一个版本之间的差异,需要注意仅统计目标分支是 master 且正常合并的 PullRequest 首先记录原始的信息,统一记录在 MOSN Re

  • 以下版本的发布文件包含在 npm 和 CDN 中。github 做为源码管理仓库,不包含发布文件。 版本 兼容性 错误提示 DevTool 组件反解 语法压缩 san.js san.min.js san.dev.js san.modern.js san.modern.min.js san.modern.dev.js san.spa.js san.spa.min.js san.spa.dev.js

  • 稳定化是让一个发布分支进入发布状态的过程;也就是决定哪些变更将会进入发布版本,并以此为根据修整分支的内容。 “决定”一词有许多潜在的不幸。在协作软件项目中最后一分钟特性冲击是非常常见的现象:当开发者看到软件发布将要发生,他们便混乱的结束当前的变更,不希望错过这班船。当然,这是在发布时你最不想看到的场面。如果人们能在比较以舒适的节奏,无需担心变更是进入这个版本还是下一个版本时完成这个特性,效果会更好

  • 我想为一个使用Rcpp的R包创建一个发布版本,但是当我查看的参数时,我发现即使我的Makevars文件中有一个标志,Rcpp也会在最后用一个标志覆盖它,例如,我将其视为输出 g-std=gnu 11-我"/usr/share/R/包含"-DNDEBUG-我"/home/dz5937/R/x86_64-pc-linux-gnu-库/3.6/Rcpp/包含"-我"/home/dz5937/R/x86_

  • Mesos 0.23 版本发布 Apache Mesos 0.23.0 Released 最新的Mesos版本,0.23.0,现在可以下载了。这次版本包含了以下特点和变动: Per-container network isolation(MESOS-1585)容器的网络隔离 Mesos 0.23 提供支持单个容器的网络监控和隔离。网络隔离避免了单个容器可变网络端口带来的烦恼,网络带宽消耗过高或者网