看到错误,一开始怀疑是签名问题。去查新版本打包问题。官方资料如下:
APK signature scheme v2
Android 7.0 引入一项新的应用签名方案 APK Signature Scheme v2,它能提供更快的应用安装时间和更多针对未授权 APK 档案更改的保护。在预设情况下,Android Studio 2.2 和 Android Plugin for Gradle 2.2 会使用 APK Signature Scheme v2 和传统签名方案来签署您的应用。
虽然我们建议您对您的应用采用 APK Signature Scheme v2,但这项新方案并非强制性的。如果您的应用在使用 APK Signature Scheme v2 时不能正确开发,您可以停用这项新方案。禁用过程会导致 Android Studio 2.2 和 Android Plugin for Gradle 2.2 仅使用传统签名方案来签署您的应用。要仅用传统方案签署,开启模组级 build.gradle
档案,然后将行 v2SigningEnabled false
新增到您的版本签名配置中:
android {... defaultConfig {...} signingConfigs { release { storeFile file("myreleasekey.keystore") storePassword "password" keyAlias "MyReleaseKey" keyPassword "password"v2SigningEnabled false}}}
注意:如果您使用 APK Signature Scheme v2 签署您的应用,并对应用进行了进一步更改,则应用的签名将无效。出于这个原因,请在使用 APK Signature Scheme v2 签署您的应用之前、而非之后使用 zipalign
等工具。
如需了解详细资讯,请阅读相关的 Android Studio 文件,这些文件介绍了如何在 Android Studio 中签署应用以及如何使用 Android Plugin for Gradle 为签署应用配置构建档案。
分析开发文件,不难发现,这是android7.0的新特性,也是androidstudio预设签名的方式,采用了APK Signature Scheme v2这种签名方式.所以不难解决了.
我按照上面提示去解决。
还试了修改运行配置
结果还是运行不了,最后发现
是最小版本问题,也报这个错误。各位码兄可注意,有时候run失败可能不止是新签名问题。