原文:http://android.eoe.cn/topic/android_sdk

在生成过程中,你的Android项目的编译和打包成一个apk文件,为您的应用程序二进制的容器。它包含了所有必要的信息来运行您的应用程序在设备或模拟器,如编译dex文件(。class文件转换到Dalvik字节码),AndroidManifest.xml文件的二进制版本,编译的资源(resources.arsc )和未编译您的应用程序的资源文件。

如果您正在开发的ADT插件在Eclipse中,递增地建立您的项目的源代码进行更改。Eclipse的自动输出。apk文件到项目的bin文件夹中,这样你就不必做任何额外的生成。apk文件。

如果你正在开发一个非Eclipse环境中,你可以建立你的项目生成的build.xml Ant文件是在项目目录。 Ant文件的要求,自动调用的制作工具。你的目标。
要运行一个仿真器或设备上的应用程序,该应用程序必须签署使用调试或发布模式。你通常要签署您的应用程序在调试模式下,当你开发和测试您的应用程序,因为生成工具使用调试与已知的密码,所以您不必输入每次生成的关键。当你准备发布应用程序谷歌游戏,你必须使用自己的私钥签名的应用程序在释放模式。

幸运的是,Eclipse或者Ant构建脚本的迹象,为你的应用程序在调试模式下,当你建立你的应用程序。您还可以轻松地设置Eclipse或者Ant构建以及签署您的应用程序在释放模式。对应用程序进行签名的详细信息,请参阅您的应用程序签名。

下图描述了参与建设和运行应用程序的组件:
文件:Build-simplified.png

'''在生成过程的详细分析

在生成过程涉及到许多工具和流程,生成中间文件的方式产生的。apk。如果您正在开发在Eclipse中,完整的构建过程是自动进行定期为您开发并保存您的代码更改。如果您使用的是其他的IDE,这个构建过程完成后每次运行生成的Ant构建脚本为您的项目。这是有用的,但是,了解什么是引擎盖下发生,因为很多的工具和流程被屏蔽你。下图描述了在构建不同的工具和过程所涉及的:
文件:Build.png
下面列出的一般过程为一个典型的构建:
* Android的资产打包工具(AAPT)把你的应用程序资源文件,如AndroidManifest.xml文件和XML文件为您的活动,并编译它们。一个R.java文件也产生这样你就可以从Java代码中引用你的资源。
* aidl工具。AIDL接口,你进入Java接口转换。
* 你的Java代码,包括R.java文件。aidl文件,由Java编译器编译的类文件输出。
地塞米松工具。class文件到Dalvik字节码转换。任何第三方库和类文件已包含在您的项目也被转换为。dex文件,使他们能够进入决赛。apk文件进行打包。
* 所有非编译的资源(如图片),编译的资源,并发送的apkbuilder工具。dex文件打包到一个。apk文件。
一旦apk文件建立的,它必须签署一个调试或释放键,然后才可以安装在设备上。
* 最后,如果被签署的应用程序在发布模式下,你必须保持一致。apk文件的zipalign工具。调整最终的apk文件在设备上运行应用程序时减少内存的使用情况。

如何打包和生成你的Android应用程序的更多相关文章

  1. Android应用程序资源的编译和打包过程分析

    文章转载至CSDN社区罗升阳的安卓之旅,原文地址:http://blog.csdn.net/luoshengyang/article/details/8744683 我们知道,在一个APK文件中,除了 ...

  2. android应用程序的混淆打包

    android应用程序的混淆打包 1 . 在工程文件project.properties中加入下proguard.config=proguard.cfg , 如下所示: target=android- ...

  3. 如何发布打包并发布自己的Android应用(APP)

    如何将android项目打包成apk 分类: android 2012-08-29 10:12 1678人阅读 评论(1) 收藏 举报 androideclipseapplicationjdkjava ...

  4. Visual Studio Installer打包后生成的安装文件每次执行都需要重新安装C++ 2010运行库(x86)的解决方案

    原文:Visual Studio Installer打包后生成的安装文件每次执行都需要重新安装C++ 2010运行库(x86)的解决方案 如果你是用Visual Studio自带的打包项目打包了一个I ...

  5. VS生成Cordova for Android应用之Gradle

    原文:VS生成Cordova for Android应用之Gradle 一.Gradle简介 Gradle是一个基于Apache Ant和Apache Maven概念的项目自动化建构工具.它使用一种基 ...

  6. Grunt打包Electron,生成exe的安装包

    在之前的博客:3.electron打包生成exe文件 我们已经得到了electron打包好的应用了,目录如下,但是我们如何整合成一个安装程序,发给客户使用呢? 我们可以使用grunt-electron ...

  7. Android开发之 Android应用程序目录结构解析

    建立的HelloWorld的应用项目,其代码是由ADT插件自动生成的,形成Android项目特有的结构框架. 接下来让我带领大家解析一个Android程序的各个组成部分,这次我们拿一个Hello,Wo ...

  8. 第一个android应用程序

    首先打开Eclipse和一个AVD.在Eclipse中选择File→New→Project→Android→Android Application Project 点击Next,按照下图所示填写 注: ...

  9. Android应用程序插件化研究之AssertManager

    最近在研究Android应用的插件化开发,看了好几个相关的开源项目.插件化都是在解决以下几个问题: 如何把插件apk中的代码和资源加载到当前虚拟机. 如何把插件apk中的四大组件注册到进程中. 如何防 ...

随机推荐

  1. django之异常错误

    现象:最近需要抓取一些网页的信息,但发现Python的乱码问题相对Java来说,不太一样.按照以往Java解决中文乱码问题的思路去解决Python乱码,貌似行不通,报错信息: SyntaxError: ...

  2. redis配置笔记

    #cd /opt#tar -zxvf redis-4.0.6.tar.gz#cd redis-4.0.6#make #cd src#make install PREFIX=/usr/local/red ...

  3. vmware网络模式仅主机模式linux不能ping通window

    问题描述 vmware在使用仅主机模式,新建的linux虚拟机,不能ping通window本机(宿主主机).....(这不蛋疼吗...) 注意:后面的搞定后的结果 解决方案 开启家庭组的,网络发现功能 ...

  4. android发送与接收超长短信

    android发送与接收超长短信 android接收发送短信,支持的最大字符数是70个,实际是67个字符,如果发送的短信超过了该数目,那就需要用到sendMultipartTextMessage()方 ...

  5. JQuery实现的 checkbox 全选;<select>下拉框功能

    1. 全选的checkbox选中时,子checkbox全部选中.反之,全部不选 2.子checkbox中,只要有没有被选中的,取消全选checkbox的选中 3.子checkbox的数量和子check ...

  6. C#代码实现邮箱验证C#中及一些常用的正则表达式

    .验证用户名和密码:("^[a-zA-Z]\w{5,15}$")正确格式:"[A-Z][a-z]_[0-9]"组成,并且第一个字必须为字母6~16位: .验证电 ...

  7. ios中项目

    上一个版本 http://pan.baidu.com/share/link?shareid=2183244558&uk=923776187 下载地址  http://pan.baidu.com ...

  8. ios中封装网络和tableview的综合运用

    1:封装网络请求 类 #import <Foundation/Foundation.h> #import "ASIFormDataRequest.h" #import ...

  9. [转载]eclipse自动同步插件filesync的使用

    原文地址:eclipse自动同步插件filesync的使用作者:老孙丢了金箍棒    这篇文章和之前我写的<eclipse下自动部署WEB项目>根本目的是一样的,只是达到目的的方式不同. ...

  10. kafka和websocket实时数据推送

    需求 ​ 已有Kafka服务,通过kafka服务数据(GPS)落地到本地磁盘(以文本文件存储).现要根据echarts实现一个实时车辆的地图. 分析 前端实时展现:使用websocket技术,实现服务 ...