从源码到apk——apk打包过程

Android程序是怎么从源码变成可以安装使用的apk的

流程

官方版

build

详细版

build-detail

上面就是一个关于构建过程的一个典型的流程图。

  • aapt(Android Asset Packaging Tool)给你的Activity提供所需的资源文件,如 AndroidManifest.xml,XML文件,并编译它们。同时产生R.java文件,使你可以在java代码中引用这些资源。
  • aidl工具把.aidl接口转换成Java接口。
  • 你所有的Java代码,包括 R.java和 .aidl文件,由Java编译器和编译输出.class文件。
  • dex工具把.class文件转换成Dalvik字节文件,第三方的类和.class也被转换成.dex文件
  • 所有无法编译的资源(比如图片),编译好的资源文件和.dex都被送到apkbuilder工具中,生成最后的.apk
  • 生成.apk时必须制定是debug还是release,release还要提供相应的key
  • 如果选择release版本,还需要使用zipalign工具对apk对齐。齐处理即使得所有资源文件距离文件起始偏移为4字节的整数倍,这样通过内存映射访问apk文件时处理速度更快。

输出

生成的apk在app/build/outputs/apk/目录下,命名规则 app--.apk,例如,app-demo-debug.apk.

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
下载内容为官方原装下载资源包 Haxe是一门新兴的开源编程语言,开发者称:“相比其他语言(Java的平台是 JVM,C#的平台是.Net,ActionScript的平台是Flash Player等等),Haxe才是真正的多平台语言。不管是开发原生iOS、Android应用,还是网页;不论是应用于服务器还是个人桌面,Haxe都 可以胜任。” Haxe分别为Windows、Mac OSX以及Linux安装程序进行打包,当然如果安装包出现问题或者洁癖者也可以进行手工安装。安装包及手动安装指南尽在下载页面。 Haxe能做什么? 使用Haxe开发的程序可以被编译成: JavaScript:你可以将Haxe程序编译成单一的.js文件,访问DOM APIs并拥有“自动完成”的支持,所有的依赖都在编译时都被搞定了。 Flash:Flash早就放弃移动平台,和桌面平台共存亡了。你可以将Haxe程序编译成一个.swf文件,支持从Flash Player 6到11的所有版本。 NekoVM:将Haxe程序编译成NekoVM字节码,用在服务器相关的程序(比如动态网页),同时也可以用在命令行或者桌面应用中。 PHP:你可以将Haxe程序编译成.php文件。 C++:你可以直接从Haxe源码生成C++的code。NME库使用这项特性在iOS和Android上直接运行Haxe的code。 C#和Java:使用 -java 和 -cs 来生成相应源码 为什么要用HaxeHaxe是一门很强力的语言,有很多引人注目的特性。目标是给开发者一套一体化的工具来创建网站或者应用,一门语言打天下。它可以实现: ECMA风格的客户端、服务器端以及桌面型程序。 风一般迅捷的编译速度。 类型检查带来好处多多。 给特定平台引入缺失的语言特性,例如为Flash开发引入InLining和generics特性、宏、为C++引入动态对象以及运行时类信息等等。 无视平台差异,在不同平台之间轻松切换。 统一的语法以及特性。 一次编写,处处“自动”编译。 解救跨平台开发的一次尝试 由于它可以自动编译生成多种类型的代码,所以无论是iOS、Android、Windows Phone平台之间的本地程序跨平台,还是直接生成HTML5应用,甚至是跨越移动平台和桌面平台,都是解决应用在“不同平台之间”移植所带来痛苦的、一个不错的尝试。 愿望如此美好,引无数英雄尽折腰。不过要彻底根治跨平台的痛苦,恐怕是一条无比漫长艰辛的旅程。
要提取AutoJS打包APK源码,你需要完成以下步骤: 第一步,确保你的手机上已经安装了AutoJS并启用了无障碍服务。你可以在应用商店中下载并安装AutoJS应用程序。 第二步,打开AutoJS应用并创建一个新的脚本项目。你可以点击右下角的“+”按钮,然后选择“新建项目”。 第三步,编写你的脚本代码。你可以使用AutoJS的API实现不同的功能,例如模拟用户操作、操作系统设置等等。在编写脚本时,可以参考AutoJS的官方文档或搜索网络上的教程。 第四步,完成你的脚本后,点击AutoJS界面上的“生成APK”按钮。接下来,你需要根据提示进行一些设置,例如应用名称、包名、版本等。这些设置将影响生成APK的最终效果。 第五步,生成APK后,你可以在AutoJS应用中找到它。选择你的项目,然后点击右上角的“导出APK”按钮。 第六步,导出APK后,你可以使用文件管理器在手机的存储位置中找到它。将APK文件复制到你的电脑中,以便进一步处理。 最后,你可以使用Java开发工具(如Android Studio)来提取APK的源代码。打开Android Studio,并从菜单中选择“导入项目”。选择你复制到电脑上的APK文件,并按照Android Studio的指导进行操作。在导入的过程中,Android Studio会自动解压APK文件并提取代码。 总结起来,要提取AutoJS打包APK源码,你需要先创建并编写脚本,然后生成APK并导出到电脑。最后,使用Android Studio或其他适用的开发工具提取源码

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值