为啥安卓的app安装之后安装包可以删掉?

你说到的过程涉及到这些内容1,以.apk结尾的安装包,实际上是个zip文件2,应用安装好后的安装包3,实际的android runtime程序(.odex,无论是dalvik还是art的oat格式)4,实际运行中的程序~~~~其中1,2是完全相同的两个文件1装完后就没有用了可以删3由2中的classes.dex转换(编译)而来,以.odex结尾,是个缓存,如果系统出现变化(如ota更新,应用被升级),这个缓存可能会重建,此时系统可能会显示正在安装更新/正在安装应用程序。4是,zygote复制出虚拟机进程,建立android运行时,建立堆栈,载入 “3”+“2中的资源文件,本地可执行代码等”根据需要载入内存,作为一个运行着的托管程序的状态。内置于系统目录的2的zip文件中可以不包括.dex文件,相应的3会与2在同一个目录,若出现变化时,新生成的3会与别的3一样放在专门的可修改的目录中
■网友
安装包被转移到了 data/app 或 sdcard/.android_secure 下。
■网友
一个软件包安装完,软件安装包内的数据就会安装到系统相应的位置,运行的时候并不需要从安装包中提取数据,所以可以删。一个大的程序,运行内存占用很小,这是因为不需要把数据全部提取到内存中,内存中只是存放当前运行需要的数据,其他的都放在外存。不然的话多大的内存都不够用。 当这一部分数据处理完成(比如游戏中当前关卡过完,需要加载下一部分关卡)就会继续加载另外需要运行的数据,没用的数据会释放掉(不释放也可以,只是最后你会看到应用崩溃或者内存占满)。
■网友
这有什么难理解的windows下安装程序安装完后不也可以删掉吗
■网友
windows 安装完也可以把安装包删掉。
■网友
安装文件是安装文件,安装的时候,会解压缩,然后会把一些文件copy到系统规定的目录。安装完了后,安装文件当然可以删除了,这个就和windows上一样的啊。


    推荐阅读