Android keystore

Android keystore,第1张

概述一、keystore文件背景签名有两个主要作用:1.确定发布者身份。由于应用开发者可以通过使用相同的包名来替换已经安装的程序,因此使用签名可以避免发生这种情况。2.确保应用的完整性。签名会对应用包中的每个文件进行处理,从而确保程序包中的文件不会被替换。 一、keystore文件背景

  签名有两个主要作用:

    1.确定发布者身份。由于应用开发者可以通过使用相同的包名来替换已经安装的程序,因此使用签名可以避免发生这种情况。

    2.确保应用的完整性。签名会对应用包中的每个文件进行处理,从而确保程序包中的文件不会被替换。

 

二、keystore签名文件生成

  1. 通过AndroID studio生成keystore

  1)点击Build->Generate Signed APK

 

  2)d出AndroID App Bundle和APK选项界面,其中AndroID App Bundle是Google新推出的动态发布方案,这种发布方式的App更小、安装更快,但目前最大的问题时仅支持Google Play,国内经常404,因此我们选择“APK”

 

  3)点击Create New,新建签名文件

  4)配置签名信息

 

  2. 通过命令行生成keystore

  具体命令如下:

keytool -genkeypair -alias east -keyalg RSA -valIDity 4000 -keystore east.jks

  选项说明,可通过如下命令查看:

keytool -genkeypair -help

 

  3. 查看keystore信息

  打开命令行,进入签名 文件目录,输入如下命令:

keytool -List -keystore "east.jks"

  

三、对应用进行签名

  1. build.gradle配置自动签名

  1) 将签名文件east.jks拷贝到源码的app目录下;

   2)配置app/build.gradle文件,具体修改如下:

androID {    ... ...    //自动签名    signingConfigs {        mySign {            keyAlias ’east’            keyPassword '123456'            storefile file('./east.jks')            storePassword '123456'        }    }       buildTypes {        deBUG {            signingConfig signingConfigs.mySign            ... ...        }        release {            signingConfig signingConfigs.mySign            ... ...        }    }        ... ...}    

  

  2. 通过命令行对apk文件签名

  1)jarsigner签名

  jarsigner是JDK提供的针对jar包签名的通用工具,位于JDK/bin/jarsigner.exe,签名命令如下:

jarsigner -verbose -keystore east.jks -storepass 123456 -signedjar test-signed.apk test.apk east

  2)apksigner签名

  apksigner是Google官方提供的针对AndroID apk签名及验证的专用工具,apksigner.bat位于AndroID SDK的build-tools目录下。签名命令如下:

D:\tools\sdk\gradle\build-tools.0.1\apksigner.bat sign --ks east.jks --ks-key-alias east test.apk

 

  3. 查看apk的签名信息

  1)keytool,只支持v1签名校验。具体命令如下:

keytool -List -v -keystore east.jks

  2)apksigner,支持V1和v2签名校验。具体命令如下:

D:\tools\sdk\gradle\build-tools.0.1\apksigner.bat verify -v --print-certs test-signed.apk

  

 

总结

以上是内存溢出为你收集整理的Android keystore全部内容,希望文章能够帮你解决Android keystore所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/web/1020857.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-23
下一篇 2022-05-23

发表评论

登录后才能评论

评论列表(0条)

保存