Android证书申请流程和注意事项

Android平台打包发布apk应用,需要使用数字证书(.keystore文件)进行签名,用于表明开发者身份。IOS平台在打包发布ipa应用,需要使用.p12证书和描述文件。部分SDK申请的时候需要使用Android的证书信息MD5/SHA1/SHA256

Android证书申请流程

  1. 准备工具

    • Java JDK 安装
    • Keytool 工具(包含在 JDK 中)
  2. 生成密钥库 (Keystore)

    keytool -genkey -v -keystore my-release-key.keystore -alias alias_name -keyalg RSA -keysize 2048 -validity 10000
    • -keystore: 指定生成的 keystore 文件名
    • -alias: 指定别名
    • -keyalg: 指定密钥算法(RSA)
    • -keysize: 指定密钥长度(2048 位)
    • -validity: 指定证书有效期(天数)
  3. 输入相关信息

    • 密码
    • 姓名或组织名称
    • 单位名称
    • 组织单位名称
    • 城市或地区
    • 州或省份
    • 国家代码(如 CN)
  4. 导出证书

    keytool -exportcert -alias alias_name -file certificate.cer -keystore my-release-key.keystore
  5. 签名 APK

    • 使用 jarsigner 工具对 APK 进行签名
    jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore my-release-key.keystore my_application.apk alias_name
  6. 验证签名

    jarsigner -verify -verbose -certs my_application.apk
  7. 优化 APK

    • 使用 zipalign 工具优化 APK
    zipalign -v 4 my_application.apk my_application_aligned.apk

注意事项

  • 备份 Keystore 文件:确保 Keystore 文件安全备份,丢失后无法更新应用版本。
  • 密码管理:妥善保管 Keystore 和别名的密码,不要泄露。
  • 有效期设置:证书的有效期应足够长,以避免频繁重新生成证书。
  • 多平台支持:如果应用需要在多个平台上发布,确保生成的证书兼容所有平台。
  • 证书信息一致性:填写证书信息时,确保与开发者账户信息一致。
  • 签名工具版本:使用最新版本的 jarsignerzipalign 工具,以确保最佳兼容性和安全性。
  • 自动化脚本:可以编写脚本自动化签名和优化过程,提高效率。

通过以上步骤和注意事项,可以顺利地为 Android 应用生成并管理证书。


如果您是用UNIapp开发app应用的话仅仅需要生成证书即流程如下

keytool -genkey -alias 证书名称 -keyalg RSA -keysize 2048 -validity 36500 -keystore 证书名称.keystore

上面的命令里面只需要修改证书名称即可。通过命令设置证书密钥等一系列的信息生成即可

Enter keystore password:  //输入证书文件密码,输入完成回车  
Re-enter new password:   //再次输入证书文件密码,输入完成回车  
What is your first and last name?  
  [Unknown]:  //输入名字和姓氏,输入完成回车  
What is the name of your organizational unit?  
  [Unknown]:  //输入组织单位名称,输入完成回车  
What is the name of your organization?  
  [Unknown]:  //输入组织名称,输入完成回车  
What is the name of your City or Locality?  
  [Unknown]:  //输入城市或区域名称,输入完成回车  
What is the name of your State or Province?  
  [Unknown]:  //输入省/市/自治区名称,输入完成回车  
What is the two-letter country code for this unit?  
  [Unknown]:  //输入国家/地区代号(两个字母),中国为CN,输入完成回车  
Is CN=XX, OU=XX, O=XX, L=XX, ST=XX, C=XX correct?  
  [no]:  //确认上面输入的内容是否正确,输入y,回车  

Enter key password for <testalias>  
        (RETURN if same as keystore password):  //确认证书密码与证书文件密码一样(HBuilder|HBuilderX要求这两个密码一致),直接回车就可以

获取证书签名

1.签名生成工具(用此工具不必在使用方法2获取MD5)
用于获取安装到手机的第三方应用签名的apk包。
安卓设备扫码下载:

输入图片说明

2.使用命令查看证书签名 MD5/SHA1/SHA256
可以使用以下命令查看:

keytool -list -v -keystore 证书名称.keystore  

这里需要注意的地方就是您证书所在的文件夹内运行命令窗口,要不然会报错的。

0 条评论

还没有人发表评论

发表评论 取消回复

记住我的信息,方便下次评论
有人回复时邮件通知我