admin管理员组文章数量:1122851
1.apk打包
Android开发中打包apk主要有两种方式:
①使用Android Studio集成直接生成apk;
②使用ant工具在命令行方式下打包apk。
不管哪种方式,打包apk的本质过程都是一样的。
Android的apk包文件包括两部分:代码和资源。所以打包也分为资源打包和代码打包两个方面。
apk打包的流程图:
①aapt打包资源文件,生成R.java文件
②aidl处理aidl文件,生成相应的Java文件
③javac编译源代码+R+aidl,生成class文件
④DX将所有的class文件转换成dex文件
⑤ApkBuilder将资源文件、dex文件打包成apk
⑥KeyStore对apk文件进行签名
⑦ZipAlig对签名后的apk文件进行对齐处理
2.打包流程
①通过aapt工具打包资源文件,生成R.java文件
资源文件主要包括AndroidManifest.xml、布局文件、各种xml资源等。这些资源文件都会被编译,生成相应的R.java文件。(注意:assets和res/raw两个目录里的文件不会在这一步打包,它们都会在打包apk的时候直接打包到apk中,携带在应用里面供应用访问,而且不会被编译成二进制)
打包资源的工具是aapt,全称是Android Asset Packaging Tool。aapt有一个可执行的aapt.exe在Android SDK的build-tools下,选择要编译的SDK版本,如23.0.1,在该目录下命令行里运行指令:
aapt.exe package -f -m -J E:\MyApp\bin (产物R.java输出的目录)
-S MyApp\app\src\main\res (资源文件夹路径)
-I D:\Tools\AndroidSDK\platforms\android-23\android.jar (本地android.jar路径)
-M E:\MyApp\app\src\main\AndroidManifest.xml (项目AndroidManifest.xml)
aapt 参数的含义:
-f 如果编译出来的文件已经存在,强制覆盖。
-m 使生成的包的目录放在-J参数指定的目录。
-J 指定生成的R.java的输出目录
-S res文件夹路径
-A assert文件夹的路径
版权声明:本文标题:Android apk打包流程★ 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.betaflare.com/biancheng/1726733792a1156530.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论