Android 项目编译过程

android 工程构建的持续集成,需要搭建一套编译和打包自动化流程,比如建立每日构建系统、自动生成发布文件等等。这些都需要我们对android工程的编译和打包有一个比较深入的理解,例如知道它的每一步都做了什么,需要什么环境和工具,输入和输出是什么,等等。

首先,假定你的系统(Windows、Linux、Mac OS都行,本文默认使用Linux系统来举例子,但在 Windows中几乎没有什么差别)已经安装了JDK和Android SDK, 如果没有安装,可以参考我先前的博客: Ubuntu搭建Eclipse+JDK+SDK的Android 和 Windows搭建Eclipse+JDK+SDK的Android。

再假定你的Android SDK的路径是ANDROID_SDK_HOME,你想要编译的Android OS版本是ANDROID_OS_VERSION(比如android-1.6、android-8、android-10等)。

我们重点关心的是:

    (1)这个过程的输入是什么?

立即进入“豆包AI人工智官网入口”;

立即学习“豆包AI人工智能在线问答入口”;

(2)这个过程的输出是什么?

(3)这个过程使用了什么工具?

至于使用什么参数,可以自己去看对应命令的帮助文件,或者在网上搜索,这不是本文的重点。

Android 项目编译过程

提前列出下列步骤中需要用到的工具,如下表:

名称

功能介绍

操作系统中的路径

aapt

Android资源打包工具

${ANDROID_SDK_HOME}/platform-tools/appt

aidl

Android接口描述语言转化为.java文件的工具

${ANDROID_SDK_HOME}/platform-tools/aidl

javac

Java Compiler

${JDK_HOME}/javac或/usr/bin/javac

dex

转化.class文件为Davik VM能识别的.dex文件

${ANDROID_SDK_HOME}/platform-tools/dx

apkbuilder

生成apk包

${ANDROID_SDK_HOME}/tools/opkbuilder

jarsigner

.jar文件的签名工具

${JDK_HOME}/jarsigner或/usr/bin/jarsigner

zipalign

字节码对齐工具

${ANDROID_SDK_HOME}/tools/zipalign

第一步:打包资源文件,生成R.java文件【输入】Resource文件(就是工程中res中的文件)、Assets文件(相当于另外一种资源,这种资源Android系统并不像对res中的文件那样优化它)、AndroidManifest.xml文件(包名就是从这里读取的,因为生成R.java文件需要包名)、Android基础类库(Android.jar文件)【输出】打包好的资源(一般在Android工程的bin目录可以看到一个叫resources.ap_的文件就是它了)、R.java文件(在gen目录中,大家应该很熟悉了)【工具】aapt工具,它的路径在${ANDROID_SDK_HOME}/platform-tools/aapt(如果你使用的是Windows系统,按惯例路径应该这样写:%ANDROID_SDK_HOME%platform-toolsaapt.exe,下同)。第二步:处理AIDL文件,生成对应的.java文件(当然,有很多工程没有用到AIDL,那这个过程就可以省了)【输入】源码文件、aidl文件、framework.aidl文件【输出】对应的.java文件【工具】aidl工具第三步:编译Java文件,生成对应的.class文件【输入】源码文件(包括R.java和AIDL生成的.java文件)、库文件(.jar文件)【输出】.class文件【工具】javac工具第四步:把.class文件转化成Davik VM支持的.dex文件【输入】 .class文件(包括Aidl生成.class文件,R生成的.class文件,源文件生成的.class文件),库文件(.jar文件)【输出】.dex文件【工具】dex工具第五步:打包生成未签名的.apk文件【输入】打包后的资源文件、打包后类文件(.dex文件)、libs文件(包括.so文件,当然很多工程都没有这样的文件,如果你不使用C/C++开发的话)【输出】未签名的.apk文件【工具】apkbuilder工具第六步:对未签名.apk文件进行签名【输入】未签名的.apk文件【输出】签名的.apk文件【工具】jarsigner第七步:对签名后的.apk文件进行对齐处理(不进行对齐处理是不能发布到Google Market的)【输入】签名后的.apk文件【输出】对齐后的.apk文件【工具】zipalign工具知道了上面这些细节后,就可以实现很多我们想实现东西了,比如:编译流程自动化,例如我们可以使用某种脚本,像Windows下的批处理,linux下的Bash,Java下的Ant,Python、Perl这样的脚本语言,甚至直接用Java、.Net这们的强类型语言也是可以的。

如果真正弄懂了上面的步骤,了解了编译打包过程的本质,你完全可以以你想要的任何方式实现它的自动化,这才是真正的“举一反三,以不变应万变”。再比如,对Android SDK的精简,大家知道现在Android SDK动辙几百兆,我们完全可以应用上面的知识,只保留必要的工具,把SDK精简到10M以下。当然,还可以做很多事情,前提是你真正弄懂了它。

参考推荐:

Android 工程的编译过程

Android使用ANT打包,签名,混淆

以上就是Android 项目编译过程的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/64775.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年11月11日 20:26:02
下一篇 2025年11月11日 20:48:26

相关推荐

  • 狗狗币交易平台app下载 狗狗币交易平台有哪些

    本文将围绕狗狗币交易平台的选择与官方应用下载展开说明。会详细讲解如何通过安全可靠的渠道寻找并下载交易平台的应用程序,这个过程会以分步教学的形式呈现。接着,会介绍几个当前市场上主流的狗狗币交易平台,并结合网络用户的普遍反馈,对它们的特点进行综合性阐述,以供参考。 2025狗狗币交易所官网注册地址推荐:…

    2025年12月8日
    000
  • 虚拟货币的5大分类标准 交易所不会告诉你的选币技巧80%散户都买错了

    许多散户投资者在选择虚拟货币时感到困惑,导致做出不理想的决策。本文旨在解决这一问题,通过系统性地介绍虚拟货币的五大核心分类标准,帮助您理解交易所通常不会主动强调的选币逻辑。掌握这些分类方法,将有助于您建立一套独立的分析框架,从而更精准地评估项目价值,避免盲目投资。 2025主流加密货币交易所官网注册…

    2025年12月8日
    000
  • 稳定币为什么稳定?稳定币真的不会跌吗?

    binance币安交易所 注册入口: APP下载: 欧易OKX交易所 注册入口: APP下载: 火币交易所: 注册入口: APP下载: 稳定币的设计宗旨是维持其市场价值与某一相对稳定的资产(如美元、黄金等)挂钩。人们期待稳定币能够提供加密货币的便利性,同时规避其价格的剧烈波动性。这种稳定性对于交易、…

    2025年12月8日
    000
  • 币圈量化交易是什么?量化交易能赚钱吗?量化交易最直白讲解

    binance币安交易所 注册入口: APP下载: 欧易OKX交易所 注册入口: APP下载: 火币交易所: 注册入口: APP下载: 币圈量化交易,用最简单的话来说,就是利用数学模型和计算机程序来进行加密货币交易的一种方法。它不像人工交易那样依赖交易者的直觉或情绪,而是基于历史数据和预设的规则,通…

    2025年12月8日
    000
  • 币安app最新版本获取 币安最新版v2.100.1安装

    Binance 应用程序是全球领先的数字资产交易平台之一,为用户提供广泛的加密货币交易对、现货交易、合约交易以及其他丰富的金融服务。它以其高效的交易引擎、强大的流动性和全面的安全措施而受到全球用户的青睐。无论是新手还是经验丰富的交易者,Binance 都提供了直观易用的界面和专业的分析工具。本篇文章…

    2025年12月8日
    000
  • 币安Binance交易所登录最新地址 币安Binance官网官方页面

    作为全球领先的数字资产交易平台之一,币安binance提供了一个安全、稳定、高效的交易环境。通过币安的官方app,用户可以随时随地进行币种交易、资产管理等操作,享受便捷的服务。本文将详细介绍如何下载和安装币安binance官方app,并提供官方下载链接,点击本文提供的下载链接即可开始下载。币安官网网…

    2025年12月8日
    000
  • 【量化交易入门】加密货币自动搬砖 年化300%的Arbitrage Bot搭建教程

    加密货币市场因其波动性,为量化交易提供了机会。其中,“搬砖”,即套利(Arbitrage),是一种常见的策略,旨在利用不同交易平台之间同一资产的价格差异获取收益。本文将介绍如何通过搭建一个自动化的套利机器人(Arbitrage Bot)来实现这一目标,并探讨标题中提及的年化300%潜在收益的可能性以…

    2025年12月8日
    000
  • 怎么获取加密货币 选对软件电费省一半收益翻3倍

    加密货币挖框是一个通过计算机算力解决复杂数学难题来验证交易并生成新代币的过程。矿工投入计算资源,成功解决问题后,即可获得加密货币作为奖励。这个过程是许多区块链网络维护安全和去中心化的基础。 2025多算法挖框官网注册地址推荐: NiceHash: MinerGate: GMiner: Phoenix…

    2025年12月8日
    000
  • 交易平台API对接软件合集 职业交易员绝不外传的赚钱工具箱

    对于追求效率和策略执行精度的职业交易员来说,交易平台API对接软件构成了他们不愿轻易示人的“赚钱工具箱”。这类软件通过直接连接交易平台的应用程序接口(API),赋予交易员高度的自动化和定制化能力。它们不仅是执行交易的工具,更是实现复杂策略、进行深度市场分析的关键。本文旨在介绍这类工具的基本概念、核心…

    2025年12月8日
    000
  • 【警告】99%的虚拟货币系统都有漏洞! 黑客亲授5大安全防护技巧!

    虚拟货币作为近年来备受关注的数字资产形式,其底层系统的复杂性和创新性在带来机遇的同时,也伴随着不容忽视的安全挑战。本文旨在探讨虚拟货币系统面临的安全风险,并根据安全专家的经验,为您提供五项关键的安全防护技巧,详细讲解如何通过这些步骤来增强您的数字资产安全,有效应对潜在的漏洞威胁。 2025主流加密货…

    2025年12月8日
    000
  • Web3=区块链+AI+元宇宙? 核心架构解析:智能合约与分布式存储

    当前,关于Web3的讨论常常将其简单地描绘为区块链、AI和元宇宙的结合体。本文旨在澄清这一常见误解,深入剖析这些概念之间的真实关系。我们将阐明Web3的本质是构建一个去中心化的、用户拥有数据主权的下一代互联网。为实现这一目标,本文将重点图解Web3的两大核心技术支柱——智能合约与分布式存储的运作架构…

    2025年12月8日
    000
  • AI量化交易年度横评 惊人回报率!机器人自动交易的秘密全公开

    本文将深入探讨AI量化交易背后常被提及的“惊人回报率”的来源,揭开机器人自动交易的核心秘密。我们将详细讲解其工作流程,帮助用户理解整个操作过程,并结合网络上的综合评价,对当前主流的AI量化交易平台进行一个横向评述,为用户提供一个客观的参考视角。 2025主流加密货币交易所官网注册地址推荐: 欧易OK…

    2025年12月8日
    000
  • 虚拟币交易平台官方最新版 v6.129.0 安卓app2025年新版

    虚拟币交易平台官方最新版 v6.129.0 是一款为安卓用户打造的专业、安全的数字资产交易应用。它提供了丰富的市场行情、便捷的交易功能和多重安全防护,致力于为用户提供一流的交易体验。本文将为您提供2025年新版官方app下载链接,并附上详细的安装说明。点击本文中提供的下载链接,即可下载官方正版应用。…

    2025年12月8日
    000
  • 币圈合约100倍杠杆风险大吗?多少倍最合理?

    binance币安交易所 注册入口: APP下载: 欧易OKX交易所 注册入口: APP下载: 火币交易所: 注册入口: APP下载: 加密货币市场的合约交易,通过引入杠杆机制,极大地放大了投资者的潜在收益。然而,杠杆本身是一把双刃剑,尤其是在波动剧烈的币圈。100倍杠杆意味着投资者可以用1单位的自…

    2025年12月8日
    000
  • 手机端B安交易所App 币安官方v2.116.0最新版本手机安全获取

    要安全获取币安v2.116.0版本手机客户端,请通过以下官方渠道进行下载:1. 访问币安官方网站 Binance.com,在首页的页头或页脚区域点击“下载”进入下载中心,根据手机系统选择对应版本;2. 苹果iOS用户可在 App Store 搜索“Binance”,安卓用户可在 Google Pla…

    2025年12月8日
    000
  • 为何选择手机端ETH交易?如何避免山寨ETH应用?

    通过手机设备进行以太坊(eth)交易,已经成为许多数字资产参与者的常见操作方式。这种方式提供了不同于桌面端的特点,让用户在多种场景下都能参与市场活动。 主流交易平台的移动支持特点 1. 大型交易平台普遍提供功能完备的手机应用程序。2. 这些应用支持实时行情查看、下单交易、资产充提等核心功能。3. 通…

    2025年12月8日
    000
  • 如何获取正版以太坊交易App?官网提供安全安装通道

    获取正版以太坊交易app对于确保您的资产安全和交易顺畅至关重要。市场上存在许多非官方或伪造的应用,使用它们可能会带来严重的风险。为了安全地开始以太坊交易,您应该始终通过官网提供安全安装通道来获取应用。 如何找到正规的以太坊交易平台? 1. 选择那些拥有良好声誉和长期安全运营历史的知名交易平台。 2.…

    2025年12月8日
    000
  • 欧易App获取方法详解 官网推荐的交易平台应用程序如何安装

    获取交易平台的应用程序,确保是来自官方渠道是安全的关键步骤。 访问欧易App官方获取途径 要下载欧易App,直接前往其官方推荐的渠道是重要一步。 1. 访问欧易OKEx官方网站  2. 在网站页面上寻找App下载 3. 官方网站通常在首页顶部、底部或特定的下载页面提供App链接。 查找并选择合适的A…

    2025年12月8日
    000
  • 以太坊交易平台必安app安装教程 ETH平台v2.102.3安卓版

    本文为安卓用户提供了必安(Binance)App v2.102.3版本的详细安装指南,确保顺利安装并安全交易数字资产。1. 安装前需检查系统版本、开启未知来源应用权限并确保网络通畅;2. 通过访问官网、寻找下载入口、选择安卓版本获取官方APK文件;3. 下载后通过文件管理器找到APK文件、点击安装、…

    2025年12月8日
    000
  • 稳定币为什么不会暴跌?USDT到底靠什么保值?稳定币基础解析

    binance币安交易所 注册入口: APP下载: 欧易OKX交易所 注册入口: APP下载: 火币交易所: 注册入口: APP下载: 稳定币作为加密货币市场中的一类特殊资产,其主要目标是维持价格的稳定,通常与某种法定货币(如美元)或其他稳定资产挂钩。这种稳定性使得稳定币在加密世界中扮演着重要的角色…

    2025年12月8日
    000

发表回复

登录后才能评论
关注微信