Android -- Apk安装简诉

时间:2024-01-11 09:51:50

安装涉及到如下几个目录

system/app

​ 系统自带的应用程序,无法删除

data/app

用户程序安装的目录,有删除权限。

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

​ data/data

存放应用程序的数据

​ Data/dalvik-cache

将apk中的dex文件安装到dalvik-cache目录下(dex文件是dalvik虚拟机的可执行文件,其大小约为原始apk文件大小的四分之一)。

安装过程

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

卸载过程

删除安装过程中在上述三个目录下创建的文件及目录。

安装路径

在AndroidManifest.xml文件Manifest标签中添加android:installLocation属性:

android:installLocation

这个属性设置的是默认安装位置, 共有三个有效值,auto、internalOnly、preferExternal

auto 表示自动,由系统决定安装位置,如果系统手机内存足够,默认安装在手机内存里,如果手机内在不够,则会安装在T卡内

internalOnly 安装在手机内存

preferExternal 安装在外部存储中

Constant Value Description
auto 0 Let the system decide install location
internalOnly 1 Explicitly request to be installed on internal phone storage only
preferExternal 2 Perfer to be installed on SD card, There is no guarantee that the system will honor this request. The application might end up being installed on internal storage if external media is unavailable or too full
<manifest
xmlns:android="http://schemas.android.com/apk/res/android"
package="com.yydcdut.demo"
android:installLocation="auto"
android:versionCode="1"
android:versionName="1.0">

我是天王盖地虎的分割线