【Android】一键创建Keystore + Keystore 参数说明 + 查询SHA256(JDK Keytool Keystore)
一键创建 Android Keystore 的实用方法与参数详解
在 Android 应用开发与发布中,**Keystore(签名文件)**扮演着至关重要的角色。本文将介绍如何通过 .bat 脚本一键创建 Keystore 文件,并详细讲解每一个参数的含义,帮助你快速掌握签名文件的生成方式及用途。
什么是 Keystore?为什么必须创建?
Keystore 是 Android 应用打包发布时必须使用的 数字签名证书。每个应用必须有唯一签名,Google Play 要求每次上传的 APK 或 AAB 文件都使用 同一签名文件,否则无法进行更新。
一键生成 Keystore 的 .bat 脚本
在 Windows 系统中,我们可以编写一个 .bat 脚本自动创建 Keystore 文件,省去每次输入命令的麻烦。以下是完整脚本内容:
@echo off setlocal enabledelayedexpansion :: 配置参数 set KEYSTORE_NAME=my-release-key.keystore set ALIAS_NAME=my-key-alias set VALIDITY_DAYS=90 set KEY_PASSWORD=123456 set STORE_PASSWORD=123456 set DNAME="CN=IKKYU, OU=EQGIS, O=EQGIS, L=ChengDu, ST=SiChuan, C=CN" :: 显示配置信息 echo === 创建 Android Keystore 文件 === echo Keystore 文件名: %KEYSTORE_NAME% echo Alias 名称: %ALIAS_NAME% echo 有效期(天): %VALIDITY_DAYS% echo 密钥密码: %KEY_PASSWORD% echo Keystore 密码: %STORE_PASSWORD% echo DName 信息: %DNAME% echo. :: 执行生成命令 keytool -genkey -v ^ -keystore %KEYSTORE_NAME% ^ -alias %ALIAS_NAME% ^ -keyalg RSA ^ -keysize 2048 ^ -validity %VALIDITY_DAYS% ^ -storepass %STORE_PASSWORD% ^ -keypass %KEY_PASSWORD% ^ -dname %DNAME% echo. echo Keystore 创建成功!路径:%CD%\%KEYSTORE_NAME% pause
参数详解
我们逐一解释脚本中的关键参数设置:
1. Keystore 配置
参数 | 含义 | 示例 |
---|---|---|
KEYSTORE_NAME | 生成的 keystore 文件名 | my-release-key.keystore |
ALIAS_NAME | 密钥别名(alias) | my-key-alias |
VALIDITY_DAYS | 证书有效期(单位:天) | 90(建议用于测试)或 3650(正式发布建议10年以上) |
KEY_PASSWORD | alias 密码 | 123456 |
STORE_PASSWORD | keystore 总密码 | 123456 |
2. DNAME 签名信息字段
签名文件还需要提供一组“身份识别信息”,用于证书的拥有者识别。格式如下:
CN=IKKYU, OU=EQGIS, O=EQGIS, L=ChengDu, ST=SiChuan, C=CN
各字段含义如下:
字段 | 说明 | 示例 |
---|---|---|
CN | Common Name(通用名称,通常是开发者名) | IKKYU |
OU | 组织单位(部门) | EQGIS |
O | 组织名称(公司名) | EQGIS |
L | 城市 | ChengDu |
ST | 省/州 | SiChuan |
C | 国家代码 | CN(中国) |
你可以根据自己的公司或团队情况替换这些值。
如何获取 SHA256?
创建完成后,你可以使用以下命令查看 keystore 的指纹(SHA1 或 SHA256):
keytool -list -v -keystore my-release-key.keystore
输入密码后,会显示如下内容:
- SHA1:用于 Firebase、Google 登录等
- SHA256:用于更高安全要求的服务验证
使用建议
- 用于测试的 keystore 有效期可以设短一些(如 90 天);
- 用于上线发布的 keystore 有效期建议设为 10~30 年(如 3650、10950 天);
- keystore 文件和密码应 严格保管、加密备份,遗失后将无法更新已发布的 App。
如何在 build.gradle 中使用?
在 app/build.gradle 的 signingConfigs 中引入刚才创建的 keystore 文件:
android { signingConfigs { release { storeFile file("my-release-key.keystore") storePassword "123456" keyAlias "my-key-alias" keyPassword "123456" } } buildTypes { release { signingConfig signingConfigs.release minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' } } }
结语
通过本文介绍的 .bat 脚本,你可以高效地生成 Android Keystore 签名文件并配置各项参数。这对于发布正式版本、接入第三方服务或实现自动化构建都有重要意义。希望本文能帮助你理解和掌握 Keystore 的生成与使用流程!
免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理! 图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库和百度,360,搜狗等多加搜索引擎自动关键词搜索配图,如有侵权的图片,请第一时间联系我们。