设置打包后自动签名的配置如下 配置无误 其中xxxx.jks文件 放到project中相应的moudel下 android { signingConfigs { debug { storeFile file('xxxx.jks') storePassword '密钥密码' keyAlias = '别名' keyPassword '别名密码' } release { storeFile file('xxxx.jks') storePassword '密钥密码' keyAlias = '别名' keyPassword '别名密码' } }
buildTypes { release { debuggable false //代码是否混淆 minifyEnabled false signingConfig signingConfigs.release proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } debug { minifyEnabled false zipAlignEnabled false shrinkResources false signingConfig signingConfigs.debug } }
}
compileSdkVersion 30
defaultConfig {
applicationId "com.xxxxxx"
minSdkVersion 24
targetSdkVersion 30
versionCode 1
versionName "1.0"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
javaCompileOptions { annotationProcessorOptions { includeCompileClasspath = true } }
}
但是 当build apk时 生成的apk确实没有签名 如果确定密码 别名 别名密码都没问题的话
请检查 红色代码 minSdkVersion 24 最低版本 也就是apk可以安装到最低哪个android版本的设置
改成 23 或者23以下 问题解决
另外 查看你打包的apk是否已经签名 除了命令行 新手可以直接用压缩软件直接打开apk 进入METE-INFO 文件夹 查看是否存在
两个格式的文件 有则表示已签名
当然命令行才是程序员的灵魂:
jarsigner -verify -verbose -certs D:\myproject\mymoudel\release\myapp.apk
D:\myproject\mymoudel\release\myapp.apk 就是你要验证的apk的路径