Android开发记事本--apk咋没有V1签名

633 阅读1分钟

背景

最近要上架某应用商店的时候对方告知app没有V1签名。让我纳闷的是我没必要去把我app的签名改成纯V2的吧,签名也好久没改了。

解决思路

复习了一下app的签名打包过程,看到这样一张老图 image.png 但是!现在的AS(Android Studio Chipmunk | 2021.2.1)实在没找到这个页面。那我的签名难道就真的只有V2签名了吗?

试了一下在gradle里加上两行代码编译,然而看不出编译出来的包到底是个啥签名。

signingConfigs {
    config {
        storeFile file("******.jks")
        storePassword "******"
        keyAlias = "******"
        keyPassword "******"

        v1SigningEnabled true
        v2SigningEnabled true
    }
}

这个时候需要使用到apksigner这个工具,这个工具可以检查apk的签名状态 apksigner verify -v [path]

image.png 然后一看好像还是不行,这个时候只能去了解一下V1和V2到底区别是个啥了。 搜了一下第一个结果表示google在Android7.0之后推出的V2签名。看到这个7.0就有想法了,目前我app的minsdkVersion就是24,也就是Android7.0,那根本不需要V1签名,但是没办法应用商店需要,那我把minsdkVersion降一下是不是就可以了呢?然后果然有了V1签名。

image.png

结论和吐嘈

开发一个app是不是要兼容Android7以下的版本,至少我们开发者是没打算的,但是应用商店有要求就只能改叻。总感觉我的方法不太normal,希望大家有更靠谱的方法可以指点一下。