Android APK生成证书并签名方法

android cordova keystore android证书签名 阅读:925 时间:2018年09月20日

Android开发者可能对此很熟悉。使用Cordova等工具初试Hybird开发的前端同学可能就并不了解了,记录一下Ionic-cli / cordova项目打包APK后的签名详细过程共参考。整个流程为:打包release版本的APK -> 生成keystore证...

Android开发者可能对此很熟悉。使用Cordova等工具初试Hybird开发的前端同学可能就并不了解了,记录一下Ionic-cli / cordova项目打包APK后的签名详细过程共参考:

整个流程为:打包release版本的APK -> 生成keystore证书 -> 使用keystore证书签名APK -> 发布到应用市场

这里我们只关注生成证书与签名部分。

一、【前置环境准备】

电脑上安装了Java JDK与Android SDK,配置好环境变量等。做Android这步应该都是好的,如果没装自行百度。

二、【生成keystore证书】

Android APK的keystore证书不收费,不需要申请,可以自己生成。

首先我们要使用keytool生成keystore证书。

keytool已经集成在JDK中了。在命令行输入命令:

Bash
keytool -genkey -v -keystore myApp.keystore -alias myApp.keystore -keyalg RSA -validity 30000

运行一下试试

命令详细说明

key dec
keytool  工具名称(固定写法)
)-genkey 执行的是生成数字证书操作(固定写法)
-v 打印生成证书的详细信息
-keystore myApp.keystore 生成的证书的文件名为"myApp.keystore"(根据需求,设置你的证书名)
alias myApp.keystore 证书的别名为"myApp.keystore"。(一般和上面的文件名相同,可以不同,但要记好,签名时会用(A))
-keyalg RSA 生成密钥文件采用的算法为RSA(固定写法)
-validity 3000 该数字证书的有效期为30000天,30000天之后该证书将失效

按格式执行命令,

第一步会要求创建一个密钥。自己输入一个并记好。输入后并不会显示在窗口中,直接回车后,要求再次输入,重复输入后回车。

然后按提示填写各个问题。

最后在生成证书时会要求输入一个密钥,比如 : android 这个密钥是后面签名要用到的务必记好(B),建议与上面密钥相同。输入后回车

就可以在当前命令行的位置生成如:"myApp.keystore"的证书文件。

过程如图:

三、【给APK签名】

2. 把apk 与 myApp.keystore 放在同一目录下(不放在同一目录下也可以。放同目录下省去了配置路径的麻烦)

3. 在该目录下执行命令:

Bash
jarsigner -verbose -keystore myApp.keystore -signedjar android-release-signed.apk android-release-unsigned.apk myApp.keystore

运行一下试试

命令详细说明

key dec
jarsigner 工具称名(固定写法)
-verbose 显示出签名详细信息
-keystore myApp.keystore myApp.keystore 要使用的签名证书文件
-signedjar android-release-signed.apk 签名后的文件名
android-release-unsigned.apk 要签名的文件
myApp.keystore 别名,即(A)步中的别名

4. 执行上面命令会要求输入签名密码,比如 android (上面(B)位置提到的)后回车,会在同目录下生成一个签好名的的android-release-signed.apk即为可发布的签名包

过程如图:

中间详细信息截图太长,省略

Android APK生成证书并签名方法的更多相关文章

  1. openssl生成证书及签名

    第一步,生成私钥 $ openssl genrsa -out privatekey.pem 2048 查看生成的私钥内容 $ file privatekey.pem privatekey.pem: P ...

  2. Android Studio生成签名文件,自动签名,以及获取SHA1和MD5值

    转载请标明出处:http://blog.csdn.net/donkor_/article/details/53487133 前言: 作为谷歌在2013年为开发者提供的IDE环境工具Android St ...

  3. Android APK打包流程

    简单build流程图 官网给了我们一张非常简单的编译.打包.apk生成内容以及签名的图片.图片大体介绍了从Project到运行到设备或者模拟器的一个大体流程,我们也从中看到一个完整的apk包含如下内容 ...

  4. android apk壳

    壳对于有过pc端加解密经验的同学来说并不陌生,android世界中的壳也是相同的存在.看下图(exe = dex):    概念清楚罗,我们就说下:壳最本质的功能就是实现加载器.你看加壳后,系统是先执 ...

  5. eclipse将android项目生成apk并且给apk签名

    转载:http://www.cnblogs.com/tianguook/archive/2012/09/27/2705724.html 生成apk最懒惰的方法是:只要你运行过android项目,到工作 ...

  6. Android : apk签名的多种方法以及key的配置

    方法一:使用Android SDK中的签名工具给apk签名: (1)Android源码的 build/target/product/security/ 目录下有 media.pk8.media.x50 ...

  7. [转]Android APK签名原理及方法

    准备知识:数据摘要 这个知识点很好理解,百度百科即可,其实他也是一种算法,就是对一个数据源进行一个算法之后得到一个摘要,也叫作数据指纹,不同的数据源,数据指纹肯定不一样,就和人一样. 消息摘要算法(M ...

  8. Android apk签名方法介绍

    还望支持个人博客站:http://www.enjoytoday.cn 参考博客:http://www.enjoytoday.cn/posts/203 为什么要签名 在介绍签名方法之前,首先我们来了解下 ...

  9. (转)在eclipse中将android项目生成apk并且给apk签名

    转:http://www.cnblogs.com/tianguook/archive/2012/09/27/2705724.html 生成apk最懒惰的方法是:只要你运行过android项目,到工作目 ...

随机推荐

  1. mysql11---主键普通全文索引

    .1主键索引添加 当一张表,把某个列设为主键的时候,则该列就是主键索引 create table aaa (id int unsigned primary key auto_increment , n ...

  2. linux input子系统 — TP A/B(Slot)协议【转】

    本文转载自:http://blog.csdn.net/u012719256/article/details/53609906 将A/B协议这部分单独拿出来说一方面是因为这部分内容是比较容易忽视的,周围 ...

  3. POJ3020 Antenna Placement —— 最大匹配 or 最小边覆盖

    题目链接:https://vjudge.net/problem/POJ-3020 Antenna Placement Time Limit: 1000MS   Memory Limit: 65536K ...

  4. jfreechart应用3--饼状图 学习(作者:百度 被风吹过的日子)

    jfreechart应用3--饼状图 三. 饼图 在WebRoot目录下建立名为pie的子目录,用来存放本教程中饼图的实例jsp页面.下面让我们来看一个简单的三维饼图.首先在pie目录下建立一个名为s ...

  5. less 语法

    1 变量 less的变量使用@开头 1.1 demo @colorRed:red; @colorBlue:blue; .demo{ color:@colorRed; background-color: ...

  6. 使用Jquery动态加入对象的集合属性,提交集合属性到表单

    1.设置模型,引入构造函数,初始化集合 public class Person { public Person() //引入构造函数,初始化集合.如果未设置构造函数,集合会出现错误. { Skills ...

  7. bzoj 2733: [HNOI2012]永无乡【并查集+权值线段树】

    bzoj上数组开大会T-- 本来想用set瞎搞的,想了想发现不行 总之就是并查集,每个点开一个动态开点的权值线段树,然后合并的时候把值并在根上,询问的时候找出在根的线段树里找出k小值,看看这个值属于哪 ...

  8. hdu 3007【最小圆覆盖-随机增量法模板】

    #include<iostream> #include<cstdio> #include<cmath> #include<algorithm> usin ...

  9. bzoj4758: [Usaco2017 Jan]Subsequence Reversal(区间dp)

    4758: [Usaco2017 Jan]Subsequence Reversal Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 76  Solved ...

  10. JetSpeed2部署至Apusic操作步骤记录

    JetSpeed2部署至Apusic操作步骤记录. 1.创建Apusic新域,配置端口.管理端口和管理密码. 2.将Tomcat/lib目录中的所有jar包复制至Apusic域中的lib目录中(包括数 ...