2.1  Android项目打包成APK文件的流程

上一篇文章讲解了APK的构成,也知道了我们手机上的APP是将打包好的APK文件传到Android模拟器或Android手机中执行安装所得。这节课咱们就来学习打包APK的流程图,重点是通过哪些工具来打包文件,如下图所示。

android app多渠道打包 andriod打包apk_adb安装apk

1.通过aapt工具打包资源文件,比如res/AndroidManifest.xml/Android基础类库等,生成R.java和resources.ap_文件。

2.处理AIDL文件,生成对应的.java文件。

3.通过javac命令编译Java文件,生成对应的.class文件。

4.通过dx工具把.class文件转化成Davik VM支持的.dex文件(.java=>.class=>.dex)。

5.通过apkbuilder工具将相关文件打包生成未签名的.apk文件。

6.通过jarsigner工具将未签名.apk文件进行签名,生成一个签名apk文件。

7.通过zipalign工具将签名后的.apk文件进行对齐处理。



android app多渠道打包 andriod打包apk_adb安装apk_02

APK安装流程

3.1 安装方式

  1. 安装APK文件共有4种方式:

  (1)系统程序安装

  (2)通过Android市场安装

  (3)手机自带安装

  (4)使用ADB安装

探究:这里出现了一个新名词ADB,它是什么?有什么作用呢?

ADB的全称为Android Debug Bridge,字面意思就是安卓调试桥接,简单点说,它是Android系统提供的一套工具,通过它,我们可以在电脑上建立一个连接到手机的通道,然后可以在电脑上向手机发送一些指令,完成一些我们需要做的工作。

3.2 安装过程

1.复制APK安装包到/data/app目录下,解压并扫描安装包,把dex文件(Dalvik字节码)保存到/data/dalvik-cache目录,并在/data/data目录下创建对应的应用数据目录。

2.安装后文件所在目录:

/data/app

用户程序安装的目录

安装时把apk文件复制到此目录。

/data/dalvik-cache

将apk中的dex文件,

安装到dalvik-cache目录下。

/data/data

存放应用程序的数据。

/system/app

系统自带的应用程序,

获得adb root权限才能删除。

安装完成后,使用MT管理器,查看相关目录。

3.3 卸载过程

这个卸载的过程,就是删除安装过程中在上述三个目录下创建的文件及目录,我们来进行一一删除。

/data/app

用户序安装的目录

/data/dalvik-cache

将dalvik-cache目录下中的dex文件删除。

/data/data

将应用程序的数据删除。

卸载完成后,再次使用MT管理器,查看相关目录,文件已删除了。

3.4 adb常用命令

1.接下来介绍几种ADB的常用命令:

adb devices: 显示当前连接的设备

adb install: 安装包路径

adb shell dumpsys activity top :获取当前活动界面信息

adb shell dumpsys package [packagename]:获取包信息

adb shell dumpsys meminfo [pname/pid] :获取内存数据

adb shell dumpsys dbinfo [packagename]:获取数据库文件

adb shell pm list packages :列出当前所有已安装的程序包名

adb shell pm path  [packagename]:获取指定程序所在路径

小结

这次分享主要学习了在安装或卸载APK时,分别需要安装时将apk文件复制到/data/app 目录下,卸载时将安装在/data/data 中的用户程序删除;

安装时将apk中的dex文件安装到dalvik-cache目录下,卸载时,将dalvik-cache目录下的dex文件删除;安装时将应用程序的数据 存放在/data/data目录下,卸载时,将应用程序的数据删除。