android菜鸟学习笔记16----Android项目打包安装过程(Run as Android Application)

右击项目名称,Run as Android Appication之后,Android项目打包安装过程

1.打包生成.apk文件:

      1)把源码中的.java文件编译生成.class文件

      2)将所有的.class文件通过dex.bat生成为classes.dex文件

      3)生成资源索引表文件 resources.ap_

      4)将项目的配置文件Manifest.xml转换为二进制文件

      5)使用debug.keystore对整个项目进行打包签名,如果有配置ANDROID_SDK_HOME这个环境变量来存放模拟器的话,debug.keystore就在该目录的.android目录下。若没有配置,一般放在了C:\Users\用户名\.android目录下。

2.将生成的.apk文件加载到模拟器中

      默认放置到/data/local/tmp中

3.安装加载到模拟器中的apk文件

      1)把/data/local/tmp/xxx.apk文件,剪切到/data/app/目录下,并重命名一般是变为XXX-1.apk或者XXX-2.apk

      2)在/data/data/文件夹下以包名创建一个文件夹, 用于存储当前程序的数据

      3)在/data/system/packages.xml和/data/system/packages.list文件中分别添加一条记录,以便于系统管理该应用。

 

查看具体过程,可以通过新建一个项目,然后Run as Android Application来查看,如下:

新建一个android项目,名为011launch_process:

 

注意到,此时bin下面只有一个res目录,而res此时也是空的

此时打开File Explorer视图:(window ->show view->other中找到)

注意/data/local/tmp目录,此时为空

 

然后右击项目名称,Run as Android Application:

 

此时,bin目录中多出了很多文件

而且,如果注意观察/data/local/tmp目录,会发现多出来一个文件,然后又消失了

 

然后进入到/data/app/,会发现这个目录下多出了一个文件,然后一直都存在着。

 

而且,/data/data/下多出了一个与项目包名相同的目录

 

将/data/system/packages.xml和/data/system/packages.list导出,然后查看内容:

packages.xml中多出下面package节点:

 1 <package name="cn.csc.launch_process" codePath="/data/app/cn.csc.launch_process-1.apk" nativeLibraryPath="/data/data/cn.csc.launch_process/lib" flags="0" ft="14e6b736328" it="14e6b737636" ut="14e6b737636" version="1" userId="10049">
 2 
 3 <sigs count="1">
 4 
 5 <cert index="1" />
 6 
 7 </sigs>
 8 
 9 <perms />
10 
11 </package>

 packages.list中多出下面一行:

cn.csc.launch_process 10049 1 /data/data/cn.csc.launch_process

 

以上,就是Run as Android Application的完整过程。

 

posted on 2015-07-08 10:49  某人的喵星人  阅读(1587)  评论(0编辑  收藏  举报