安卓移动应用打包上线那些事儿

开发工具:hbuilder>云打包

打包上线的时候需要有json文件的配置就不在此赘述,此处主要记录新版本打包上线更新
很多开发者第一版本打包不进行签名私有证书等等的设置,但是在进行后期版本更新的时候会有用到,比如百度移动应用开发平台就需要有签名,这就是经历的坑,慢慢填。

签名的生成

  • 安装java的jdk付个网址:http://www.oracle.com/technetwork/java/javase/downloads/index.html
  • 开始使用keytool生成签名:
    1. 生成keystore 文件,windows下 win+r,输入命令cmd ,
    2. 然后输入:cd C:\ProgramFiles\Java\jdk1.7.0\bin 按回车 (进入到keytool的所在目录),
    3. 输入 keytool -genkey -alias abc.keystore 命令(此处 abc.keystore 的abc可以自己命名区分大小写,这就是你的签名证书文件)按下回车根据提示会有密钥的输入,一般建议20位数字,一定要记住 一定要记住 一定要记住,后面要用到的,没有回显,输完后直接按回车,根据提示输完信息,最后会有信息确认,输入 Y 按回车,这时在keytool所在目录就会生成一个 abc.keystore 的文件。

接下来就可以给我们的应用apk文件行进签名了。

给apk 文件添加签名(用jarsigner签名apk)

  • 先将需要添加签名的apk放到 C:\ProgramFiles\Java\jdk1.7.0\bin 下 如: myapp.apk
  • win+r,输入命令cmd,输入 cd /d C:\Program Files\Java\jdk1.7.0\bin 回车
  • 输入 jarsigner -verbose -keystore abc.keystore -signedjar myappx.apk myapp.apk abc.keystore 回车
    (myappx.apk 是签名后的apk)
  • 输入上面一定要记住的密钥,就ok了,apk签名成功。

引用网络上的操作方法:
//默认生成的APK文件是debug签名的,如果要发布到android Market那么需要另外用keytool和jarsigner来给你的APK签名(主要是设定时间和所有者).

按照常见步骤

  • keytool -genkey -v -keystore android.keystore -alias android.keystore -keyalg RSA -validity 20000

  • jarsigner -verbose -keystore android.keystore -signedjar android_signed.apk android.apk android.keystore
    刚开始遇到一个错误:
    jarsigner: 无法对 jar 进行签名:java.util.zip.ZipException:invalid entry compressed size (expected 639 but got 642 bytes)
    这是因为默认给apk做了debug 签名,所以无法做新的签名
    这时就必须点工程右键->android Tools ->Export Unsigned Application Package.
    或者从androidManifest.xml的 Exporting上也是一样的
    然后再基于这个导出的unsigned apk做签名,导出的时候最好将其目录选在你之前产生keystore的那个目录下,这样操作起来就方便了。

上一篇
下一篇