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

如何发布android应用程序 分类: Android开发 2014-05-30 10:53 49人阅读 评论(0) 收藏

2014-05-30 10:53 399 查看
如何发布android应用程序
http://blog.chinaunix.net/space.php?uid=20665441&do=blog&id=305500
主要讲的是应用程序数字签名

1
Eclipse中,选择Android Tools->Export Unsigned
Application Package... ,

接下来,系统会提示你输入apk文件的保存地址。这样我们就编译生成了发布版的未签名的apk文件.
eg.sdialer.apk

2
完成了发布版的编译,接下来是获取私钥,会用到JDK下的两种工具:keytool和jarsigner.
keytool是生成私钥的工具。

keytool命令的解释:

-genkey
产生一个密钥对(公钥和私钥)

-v
开启详细输出

-keystore.keystore
包含私钥的keystore名称

-storepass

keystore的密码。安全起见,通常建议不要在命令行输入这个选项,如果你不提供这个选项,

keytool就会提示你输入密码,这样你的密码就不会保存在shell历史中。

-alias
密钥的别名

-keyalg
产生密钥的加密算法,可以采用DSA和RSA中的一种

-dname

用于描述密钥的产生者。这个值将作为自签名证书中的发布者。如果你此时没有输入,那么在执行签名时,

jarsigner会提示你输入 dname(distinguished
name)

-validity
密钥的有效期,这里以天来计算。我们通常建议大于10000天

-keypass
密钥的密码,安全起见,通常建议不要在命令行输入这个选项,如果你不提供这个选项,

keytool就会提示你输入密码,这样你的密码就不会保存在shell历史中。

jarsigner命令解释:

-keystore
包含私钥的keystore

.keystore

-verbose
开启详细输出

-storepass
keystore的密码,安全起见,通常建议不要在命令行输入这个选项,

如果你不提供这个选项,jarsigner就会提示你输入密码,这样你的密码就不会保存在shell历史中。

-keypass
密钥的密码,安全起见,通常建议不要在命令行输入这个选项,如果你不提供这个选项,

jarsigner就会提示你输入密码,这样你的密码就不会保存在shell历史中。

eg.

keytool -genkey -v -keystore s-dialer.keystore -alias sdialer_name
-keyalg RSA -validity 10000

输出一个s-dialer.keystore,密钥别名为sdialer_name。有了密钥,我们就可以用它来进行签名。

签名工具是jarsigner.

eg. jarsigner -verbose -keystore s-dialer.keystore sdialer.apk
sdialer_name

这样,就为应用程序sdialer.apk完成了签名

应用程序的版本

Android应用程序主要通过androidmanifest.xml中的android:versionCode和android:versionName来实现版本管理的
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐