Android APK 手动命令编译、打包、签名步骤

一、概述步骤

 

APK的生成需要经过以下几个步骤:

1、使用Android SDK提供的aapt.exe生成R.java类文件

2、使用Android SDK提供的aidl.exe把.aidl转成.java文件(如果没有aidl,则跳过这一步

3、使用JDK提供的javac.exe编译.java类文件生成class文件

4、使用Android SDK提供的dx.bat命令行脚本生成classes.dex文件

5、使用Android SDK提供的aapt.exe生成资源包文件(包括res、assets、androidmanifest.xml等)

6、使用Android SDK提供的apkbuilder.bat生成未签名的apk安装文件

7、使用jdk的jarsigner.exe对未签名的包进行apk签名

二、流程图

三、具体步骤

1.aapt package -f -m -J kingworld/gen/ -S kingworld/res/ -I /local/tools/android-sdk-linux_x86/platforms/android-10/android.jar -M kingworld/AndroidManifest.xml
 
 
2.使用android SDK提供的aidl.exe把.aidl转成.java文件(optional)
usage: aidl OPTIONS INPUT [OUTPUT]  
       aidl --preprocess OUTPUT INPUT
 
 
3.javac -encoding UTF-8 -target 1.6 -bootclasspath /local/tools/android-sdk-linux_x86/platforms/android-10/android.jar -d kingworld/bin kingworld/src/com/android/xhliu/*.java kingworld/gen/com/android/xhliu/R.java  
 
4.mkdir classes
  jar cvf classes/kingworld.jar kingworld/bin/com/android/xhliu/*.*
 
5.dx --dex --no-strict --output=classes.dex kingworkd.jar
 
6.aapt package -f -M AndroidManifest.xml -S res -A assets -I /local/tools/android-sdk-linux_x86/platforms/android-10/android.jar  -F bin/kingworld-res.apk
 
7.apkbuilder  ${output.apk.file} -u -z  ${packagedresource.file} -f  ${dex.file}  -rf  ${source.dir}  -rj  ${libraries.dir}
 
apkbuilder kingworld.apk -v -u -z kingworld-res.apk -f ../classes/classes.dex  -rf ../src/
 
8.使用jdk的jarsigner对未签名的包进行apk签名:  
jarsigner  -keystore ${keystore} -storepass  ${keystore.password} -keypass ${keypass} -signedjar ${signed.apkfile} ${unsigned.apkfile} ${keyalias}  
 
 
Android签名用keytool和jarsigner制作apk文件
Android程序的签名和Symbian类似都可以自签名(Self-signed),但是在Android平台中证书初期还显得形同虚设,平时开发时通过ADB接口上传的程序会自动被签有Debug权限的程序。需要签名验证在上传程序到Android Market上时大家都已经发现这个问题了。Android signed制作方法 
$keytool -genkey -v -keystore android123.keystore  -alias android123.keystore  -keyalg RSA -validity 20000
 


 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值