Android App 签名生成教程

简介:本教程主要演示如何生成如下认证信息:key alias、key alias 的密码、keystore 文件、keystore 文件的密码以及 keystore 文件的数字签名。适用于 Windows 操作系统的用户。

Windows 操作系统操作步骤:

1. 下载 JDK:如果本机已经安装过 JDK,此步可略过。需要下载 jdk 8.0 版本(之前 6.0,7.0 的版本均可以生成)。官网地址:https://www.oracle.com/index.html(需要登录,免费注册),打开网址如下图所示。鼠标悬停 Downloads,会出现相关内容,如下图。点击“Java for Developers”,进入 JDK 下载页面。可以看到下载页面如下,不过是最新的。此页面最下面中有这一项,如下图所示。内容大概是:在 Java 档案提供一些我们的历史的 Java 版本。警告:这些年长的 JRE 和版本的 JDK 提供帮助开发人员调试问题在更旧的系统。他们不是最新的安全补丁更新,不推荐用于生产。可以不用理会警告。点击 Downloads 后,进入历史版本列表页面。比如下载 JDK8,点击链接进入如下页面,其中两项为一组,Development代表开发环境,Runtime Environment 代表运行环境,最后的是小版本号。比如点击 Java SE Development Kit 8u92后,进入如下页面,选择接受后,在需要安装 JDK 的对应环境下点击下载链接,如果已经登录可以直接下载,否则提示登录。(环境意思是:你下载的 JDK 需要安装在那种操作系统(或处理器)下,比如 windows32 或 64位系统,linux32 或 64位系统。Linux Intel Itanium 是使用英特尔公司 Itanium 处理器的 Linux 系统)。

2. 安装 JDK:如果本机已经安装过 JDK,此步可略过。如果你是程序员,请百度安装并配置 Java 环境变量。如果你不是,请记住如下两个地址:JDK 安装的地址,一般默认在“C:Program Files\Java\jdk1.8.0_101”,要是在安装的时候修改了路径,到你指定的路径寻找;keytool 路径,keytool 路径一般默认在 jdk 路径下的 bin 文件夹下,所以一般默认路径为:“C:\Program Files\Java\jdk1.8.0_101bin”)。

. 打开cmd管理员窗口:按下Win+R键,输入cmd,然后按回车键。

2. 管理员角色打开cmd后,如下图所示。

3. 进入桌面目录:在cmd命令行中输入以下命令:

```

cd %HOMEPATH%\Desktop

```

如果是中文目录,可以是:

```

cd %HOMEPATH%\桌面

```

4. 生成签名文件:在CMD命令行中,输入以下命令:

```

"C:\Program Files\Java\jdk1.8.0_101\bin\keytool" -genkey -keystore mykey.keystore -alias myapp -keyalg RSA -validity 10000

"C:\Program Files\Java\jdk1.8.0_101"

```

其中,`C:\Program Files\Java\jdk1.8.0_101` 是安装Java的地址,后面再加上 `\bin\keytool`。

5. 输入密码信息:在终端里输入密码,然后按下回车键继续。首先输入密钥库文件的密码,然后输入别名的密码。最后的密码是密钥库文件的密码。

6. 生成成功:密码都输入完成以后,成功生成签名文件。

7. 获取 keystore 文件:由于已经在第3步进入了桌面目录,所以生成好的文件是在桌面上。

8. 查询 keystore 文件的数字签名:申请微信、微博等移动应用时需要使用此功能。在CMD命令行中输入以下命令:

```

keytool -list -v -keystore [keystore文件路径] -storepass [keystore文件密码]

```

例如:

```

keytool -list -v -keystore C:\Users\XXX\Desktop\brovser\debug.keystore -storepass android

```

其中,`C:\Users\XXX\Desktop\brovser\debug.keystore` 是 keystore 文件的路径,`android` 是 keystore 文件的密码。生成好以后,下图中的 MD5 画红框的地方就是签名信息。注意:必须把前面的 `MD5:` 和中间的 `:` 去掉,剩下的32位大写字母加数字的字符串就是签名。签名示例如下:

```

08396BDD25FAAE9D0F6F3448C8855852

```

Mac操作系统下生成数字签名的步骤如下:

1. 验证JDK是否已安装

Mac会自带JDK环境,此步仅需验证。打开Mac的Terminal终端,输入以下命令:

```

java -version

```

如果已经安装JDK,将显示相关信息。如果未安装,请参照Windows操作步骤去Oracle官网下载并安装对应的Mac版本JDK。

2. 进入桌面

输入以下命令:

```

cd ~/Desktop

```

3. 生成签名文件

在命令行终端中输入以下命令:

```

keytool -genkey -keystore mykey.keystore -alias myapp -keyalg RSA -validity 10000

```

上面命令的两个重要参数如下:

- `keystore 文件`:`mykey.keystore`

- `alias`:`myapp`

命令输入好以后,按回车键。如下图所示:

4. 输入密码信息

密码是保密的,所以在终端里看不到,输入完按下回车就可以继续。先输入`keystore 文件`的密码,最后的密码是`alias`的密码。

5. 生成成功

生成好的文件在当前目录下面,即:桌面。

6. 查询 keystore 文件的数字签名

申请微信,微博等移动应用时需要。输入以下命令:

```

keytool -list -v -keystore [keystore 文件的路径] -storepass [keystore 文件的密码]

```