Android打包和debug签名
Android打包和debug签名
1:关于release和debug版本
开发过程中直接Run,在bin文件下生成基于debug模式的.apk文件,也就是调试版本的安装文件,调试版本的执行文件比较大,运行速度也相对较慢。而release版本,也就是正式发行版,需要进行打包后,重新生成release版本的.apk文件,用于交付。
2:Android打包
Android的打包并不复杂,本文主要针对Eclipse。clean步骤也许不需要,但建议还是保留,曾经试过直接Export,在安装Release apk文件运行后,程序直接闪退,通过clean后解决此问题,具体原因没有深究。
1:Project -> Build Automatically 去掉前面的勾(debug时需要勾上)
2:Project -> Clean...
3:Project -> Build Project
4:右键项目 -> Export... -> Android - Export Android Application
5:Project Checks - 选择需要打包的项目,Next
6:KeyStore selection - 选择或创建证书keystroe。如果已经有证书,点选Use existing keystore,并选择证书文件,然后输入证书密码;如果需要创建证书,点先Create new keystore,并输入输出路径和文件名,然后创建密码,Next。
7:Key Creation - 填写相关信息。
8:Destination and key/certificate checks - 选择生成apk的文件名和文件目录,finish。
9:完成后,将在你的对应目录也生成证书文件和release的apk文件。
3:修改debug.keystore
在开发项目的过程中,有时候需要用到MD5 fingerprint和SHA1 fingerprint,例如第三方的分享组件,百度地图等。一般来说,我们在debug和发布正式证书时,使用的MD5和SHA1是不一样的,这样就会出现一种情况,以百度地图为例,由于SHA1的值不一样,地图功能只能在debug或release版本其中一个正常运行(SHA1一致才能运行)。一般来讲,建议把第三方组件使用的SHA1修改为release版本的,然后把debug的SHA1修改与release一致,这样debug和release都能使用百度地图了。以下安装步聚需要先对项目打包。
PS:查看当前使用的debug证书信息。Window -> Preference -> Android -> Build
1:复制并修改release key文件名“androiddebugkey”
2:运行cmd,并进入release证书文件目录
3:查看相关信息:keytool -list -v -keystore androiddebugkey
4:修改这个key的别名为“androiddebugkey”,需要输入原release key密码:keytool -changealias -keystore androiddebugkey -alias microplatform_jm -destalias androiddebugkey
注意:
-keystore后跟的是目录下需要修改的文件名;
-alias后跟的是当前的别名;
-destalias后跟的是修改后的别名;
5:修改这个key的keypasswd为"android",需要输入原release key密码:keytool -keypasswd -keystore androiddebugkey -alias androiddebugkey
6:修改这个key的storepasswd为"android",需要输入原release key密码:keytool -storepasswd -keystore androiddebugkey
7:重新查看相关信息:keytool -list -v -keystore androiddebugkey
8:设置eclipse->windows->preferences->android->build中的custom keystore为你这个改完口令的key文件,设置完成后,可以看到,这个debug key的sha1值和release key的sha1值一样。