Android平台签名证书(.keystore)生成指南

Android平台签名证书(.keystore)生成指南

前提条件,需要配置jdk(推荐使用 openJdk),需求配置好安卓开发环境。

适用于 UniApp 离线打包、Android 原生项目打包、发布到应用市场等场景。

一、使用 keytool 生成 .keystore 文件

命令格式

keytool -genkey -v

-keystore your-key.keystore

-alias your-alias

-keyalg RSA

-keysize 2048

-validity 36500

参数说明

参数 说明 -keystore 指定生成的 keystore 文件名 -alias 密钥条目的别名(alias) -keyalg 加密算法(Android 推荐用 RSA) -keysize 密钥长度(推荐 2048) -validity 有效期,单位为天(36500 约等于 100 年) -v 输出详细过程(verbose)

示例

bash 复制代码
keytool -genkey -alias testalias -keyalg RSA -keysize 2048 -validity 36500 -keystore test.keystore

执行后会提示输入: • keystore 密码(storePassword) • 证书信息(姓名、组织、城市等) • alias 密码(keyPassword,可与 storePassword 一样)

使用以下命令查看证书信息

bash 复制代码
keytool -list -v -keystore test.keystore  
Enter keystore password: //输入密码,回车

二、在 Gradle 项目中配置签名

编辑 app/build.gradle(或 simpleDemo/build.gradle)添加:

gradle 复制代码
android {
    signingConfigs {
        release {
            storeFile file("test.keystore")       // 指向你的 keystore 文件
            storePassword "你的storePassword"
            keyAlias "testalias"
            keyPassword "你的keyPassword"
        }
    }

    buildTypes {
        release {
            signingConfig signingConfigs.release
            minifyEnabled false
            shrinkResources false
            zipAlignEnabled true
        }
        debug {
            signingConfig signingConfigs.release
        }
    }
}

注意: storePassword 和 keyPassword 必须和生成时输入的一致。

三、打包 APK 并签名

命令行打包,生成 release 包

shell 复制代码
./gradlew assembleRelease

输出文件位置: app/build/outputs/apk/release/app-release.apk

或使用 Android Studio: Build > Build Bundle(s) / APK(s) > Build APK(s)

四、注意事项

  • .keystore 一旦丢失,将无法更新已发布应用。
  • 强烈建议备份 .keystore 文件和密码信息。
  • 不同应用商店对签名一致性有严格要求。
  • 使用 Google Play App Signing 功能可减轻密钥遗失风险(建议开启)。

五、直接使用 Android Studio 生成 证书

相关推荐
maki0773 小时前
虚幻版Pico大空间VR入门教程 05 —— 原点坐标和项目优化技巧整理
android·游戏引擎·vr·虚幻·pico·htc vive·大空间
千里马学框架3 小时前
音频焦点学习之AudioFocusRequest.Builder类剖析
android·面试·智能手机·车载系统·音视频·安卓framework开发·audio
fundroid7 小时前
掌握 Compose 性能优化三步法
android·android jetpack
TeleostNaCl8 小时前
如何在 IDEA 中使用 Proguard 自动混淆 Gradle 编译的Java 项目
android·java·经验分享·kotlin·gradle·intellij-idea
旷野说9 小时前
Android Studio Narwhal 3 特性
android·ide·android studio
maki07715 小时前
VR大空间资料 01 —— 常用VR框架对比
android·ue5·游戏引擎·vr·虚幻·pico
xhBruce19 小时前
InputReader与InputDispatcher关系 - android-15.0.0_r23
android·ims
领创工作室19 小时前
安卓设备分区作用详解-测试机红米K40
android·java·linux
hello_ludy19 小时前
Android 中的 mk 和 bp 文件编译说明
android·编译
maki0771 天前
VR大空间资料 03 —— VRGK使用体验和源码分析
android·vr·虚幻·源码分析·oculus·htc vive·vrgk