您的位置:首页 > 移动开发 > Android开发

Android应用 打包、签名APK

2011-12-03 19:52 351 查看
这里重点介绍的是利用jdk中的两个工具对Android的应用程序包apk文件进行签名。

主要分为3个步骤:第一步生成签名文件,第二步对apk文件签名,第三步验证签名。

以下是执行命令,注意此段命令所生成的签名文件和apk文件在同一目录下。

首先进入dos命令行,运行-->cmd --> cd apk所在的路径(以下简称apk_dir)

第一步生成签名文件

apk_dir>keytool -genkey -keystore hellos.keystore -alias

hello -keyalg RSA -validity 2000

输入keystore密码:

再次输入新密码:

您的名字与姓氏是什么?

[Unknown]: mark

您的组织单位名称是什么?

[Unknown]: markorg

您的组织名称是什么?

[Unknown]: markorg

您所在的城市或区域名称是什么?

[Unknown]: Shanghai

您所在的州或省份名称是什么?

[Unknown]: Shanghai

该单位的两字母国家代码是什么

[Unknown]: cn

CN=mark, OU=markorg, O=markorg, L=Shanghai, ST=Shanghai, C=cn 正确吗?

[否]: Y

输入的主密码

(如果和 keystore 密码相同,按回车):

再次输入新密码:

-----------------------------------------------------------------

以上命令执行完成在apk_dir目录中将生成一个名字为hellos.keystore的签名文件

第二步对apk文件签名

apk_dir>jarsigner -verbose -keystore hellos.keystore -signe

djar hello_sig.apk helloworld.apk hello

输入密钥库的口令短语:

正在添加: META-INF/HELLO.SF

正在添加: META-INF/HELLO.RSA

正在签名: res/layout/linearlayout.xml

正在签名: res/layout/main.xml

正在签名: res/layout/progressbar.xml

正在签名: res/layout/radio.xml

正在签名: res/layout/relativelayout.xml

正在签名: res/layout/tablelayout.xml

正在签名: res/layout/user.xml

正在签名: AndroidManifest.xml

正在签名: resources.arsc

正在签名: res/drawable-hdpi/icon.png

正在签名: res/drawable-ldpi/icon.png

正在签名: res/drawable-mdpi/icon.png

正在签名: classes.dex

第三步验证签名

apk_dir>jarsigner -verify helloworld.apk

jar 已验证。

另外一种方法是通过eclipse差距ADT工具生成,这里也简单介绍一下:

第一步:选中你的android项目,点鼠标右键

Android Tools --> Export Signed Application Packge...

第二步

Project Checks(这里基本不用动) --> Keystore selection 选择 create new keystore

在下面依次填写签名文件的名字(要以.store结尾),密码,重复密码 --> key creation

填写签名详细信息

第三步

给签名后的apk文件输入一个名字,点Finsh完成!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: