android studio 签名 打包

方法一:

在android中。可以非常快速的生成签名文件.jsk文件。步骤如下:

第一步:


第二步:



如果你已经有了签名文件.jsk那么就选择③导入文件,这时①中就是文件路径,④是keystore的密码,⑤是别名,⑥是文件的密码。

我们这里默认没有.jsk文件。所以点击②新建一个.jsk文件

第三步:


第四步:

这里我填写的全是模拟的数据:




路径可选择:我这选择的是:F:\daima\TestJsk\app
点击finish:


可以看到生成一个:app-release.apk
同时生成一个:testjsk.jks


ok:完成

方法二:

第一步:

这种方法是在假设你已经有了jsk文件的前提下面(这里我们用在第一中方法中生成的testjsk.jks)



可以看到在app的build.gradle中生成了:

signingConfigs {
        config {
            keyAlias 'test'
            keyPassword '123456'
            storeFile file('F:/daima/TestJsk/testjsk.jks')
            storePassword '123456'
        }
    }

第二步:



这里的Singing Config选择在 前一步的config即可;

可以看到在app的build.gradle中生成了:

buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            signingConfig signingConfigs.config
        }
        debug {
            signingConfig signingConfigs.config
        }
    }

在android studio中的terminal 中使用gradlew assembleRelease命令,可以在outputs的apk中生成签名后的apk文件


如何查看签名后的jsk中的信息

找到java的jre的bin下的keytool.exe
在cmd中输入下面命令:keytool -list -v -keystore "jsk路径" -storepass 密码


YIS$YAVWBW5MK[59(]G(]24.png

需要注意的是签名密码千万不要暴露:


Android Studio 打包时 Signature Version V1 V2

前几天更新了一下Android Studio ,今天在打正式包的时候发现多了个签名版本选择:


从图中可以看到多了签名版本的选择,因为刚开始默认勾选的v2(Full APK Signature),没多想一路下一步下去,
结果在测试机上(5.0.1)一直都安装失败,想着和那个选择签名版本有关系,那就查查吧。

问题描述(v1和v2)

Android 7.0中引入了APK Signature Scheme v2,v1呢是jar Signature来自JDK
V1:应该是通过ZIP条目进行验证,这样APK 签署后可进行许多修改 - 可以移动甚至重新压缩文件。
V2:验证压缩文件的所有字节,而不是单个 ZIP 条目,因此,在签名后无法再更改(包括 zipalign)。正因如此,现在在编译过程中,我们将压缩、调整和签署合并成一步完成。好处显而易见,更安全而且新的签名可缩短在设备上进行验证的时间(不需要费时地解压缩然后验证),从而加快应用安装速度。


解决方案一

v1和v2的签名使用
只勾选v1签名并不会影响什么,但是在7.0上不会使用更安全的验证方式
只勾选V2签名7.0以下会直接安装完显示未安装,7.0以上则使用了V2的方式验证
同时勾选V1和V2则所有机型都没问题

解决方案二
在app的build.gradle的android标签下加入如下

[java]  view plain  copy
  1. signingConfigs {  
  2.     debug {  
  3.         v1SigningEnabled true  
  4.         v2SigningEnabled true  
  5.     }  
  6.     release {  
  7.         v1SigningEnabled true  
  8.         v2SigningEnabled true  
  9.     }  
  10. }  


猜你喜欢

转载自blog.csdn.net/u010693827/article/details/80198997