iOS版APP安装包通常比安卓版大几倍,这并非因为iOS系统浪费存储空间,而是由于两者安装文件格式和机制不同。本文将深入解析iOS和安卓APP安装包大小的差异,以及安装后的实际占用空间,帮助读者理解这一现象背后的原因。

文章标题:iOS版APP安装包为何比安卓大几倍?背后原因解析

文章内容:

你是否发现,在iOS的App Store和安卓的应用商店中,同一个APP的iOS版安装包大小往往远超安卓版?例如,QQ在Google Play Store上只有34MB,而在App Store上却高达231MB。这导致不少用户误以为iOS系统浪费存储空间,甚至引发了一些阴谋论。那么,为什么会出现这种情况呢?

内存占用对比_iOS APP容量大于Android _ 安卓APP安装文件大小

过去有一种流行的说法是,由于苹果的iPhone和iPad有多种不同的屏幕分辨率,iOS APP需要包含多套图像资源,导致安装包巨大。而安卓系统对图像处理要求不高,使用通用资源,因此APP更小。然而,这一解释在当今已不再适用。下面,我们将详细探讨iOS和安卓APP安装包大小的差异。

安装文件分析

在安卓中,安装文件类型为APK,而在iOS中为IPA。简单来说,这两种安装文件都是压缩包。以微信APP为例,其安卓版(6.5.10)原文件大小在Windows上显示为44.1MB,解压缩后为93.7MB。而iOS版(6.5.11)原文件大小为145MB,解压缩后为186MB。

从表面上看,IPA文件确实比APK大得多。那么,这两种安装文件究竟包含哪些内容呢?

内存占用对比_ 安卓APP安装文件大小 _iOS APP容量大于Android

微信APK与IPA文件大小对比

一个APK文件解压缩后,主要包含以下几个部分:assets目录、lib目录、META-INF目录、r目录、AndroidManifest.xml文件、classes.dex文件和resources.arsc文件。

iOS APP容量大于Android _内存占用对比_ 安卓APP安装文件大小

微信APK内含文件和文件夹

虽然这里不是编程课堂,但简单来说,APK文件中占容量最大的一般是assets目录、lib目录、res目录和classes.dex文件。

  • assets目录:存放静态文件,如音效、字体、表情包等。
  • lib目录:依赖库文件,包含armeabi和x86的库文件。
  • r目录:存放资源文件,如图片、影像文件。
  • classes.dex文件:Android中Dalvik虚拟机的可执行文件。

iOS的IPA安装包相对简单,主要包含Payload文件夹,其中有一个以APP名称命名的文件夹,如微信为WeChat.app,包含了所有执行和资源文件。

iOS APP容量大于Android _内存占用对比_ 安卓APP安装文件大小

微信IPA主要文件夹为WeChat.app

对比两个安装文件,微信APP的主执行文件为WeChat,文件大小为132MB,其它文件为54MB。而安卓版的主执行文件包括classes.dex文件和lib目录,文件大小为52.6MB,其它文件为41.7MB。

内存占用对比_iOS APP容量大于Android _ 安卓APP安装文件大小

iOS版微信主执行文件大小

 安卓APP安装文件大小 _iOS APP容量大于Android _内存占用对比

Android版微信主执行文件大小

由此可见,两个系统的同样一个APP,安装包中除主要执行文件外,其它资源文件占用空间大小相差不多。并非像最初所想的不同苹果设备需要不同的图像资源,导致安装文件巨大。但仅从安装文件来看,iOS的APP确实比安卓版大几倍。下面,我们将探讨两个系统的APP安装机制。

APP安装机制

以前,安卓主要使用Dalvik虚拟机执行APK中的classes.dex文件。但从4.4.4版本开始,为了提高APP启动和运行速度,安卓改用了ART虚拟机。在安装过程中,APK会进行预编译,将dex文件编译成oat文件,将字节码通过JIT即时编译器转换为机器识别码。因此,APK安装包中有关程序部分的文件更像是一堆代码,占用空间较小。

内存占用对比_ 安卓APP安装文件大小 _iOS APP容量大于Android

Android 4.4开始引入的ART虚拟机

iOS则不同,由于iOS最早是基于mac电脑上的OS X同源开发,因此在APP的安装方式上也相似。简单来说,iOS的APP本身就是一个大文件夹,类似Windows上的绿色软件。当你从App Store中下载安装到iPhone上时,更像是一个复制文件的过程。

安卓的安装机制使得APP安装文件的大小不代表安装到手机后的实际大小,而在iOS上,安装文件有多大,安装完后基本上也是多大。那么实际情况如何呢?

实测APP安装后占用空间

这里基于Android 7.1.2的Lineage 14.1和iOS 10.3.2系统,对比微信和网易云音乐两个APP在应用商店上的文件大小和安装后的实际占用空间。

在应用商店上,微信APP的标注大小仅为44.1MB,但安装完成后,实际占用空间增大到104MB。网易云音乐APP标注大小为29.8MB,安装后为54.33MB。

 安卓APP安装文件大小 _iOS APP容量大于Android _内存占用对比

Android上微信

内存占用对比_ 安卓APP安装文件大小 _iOS APP容量大于Android

Android上网易云音乐

App Store上微信APP的标注大小为123MB,下载安装完后为121.3MB。网易云音乐APP同样标注103MB,安装完成后为89.8MB。这是由于测试使用的是iPhone SE,App Store上标注的大小应该是以iPhone 7 Plus为标准的。这也说明在App下载安装过程中,App Store会根据设备型号来适配必要的文件。

 安卓APP安装文件大小 _内存占用对比_iOS APP容量大于Android

iOS上微信

内存占用对比_iOS APP容量大于Android _ 安卓APP安装文件大小

iOS上网易云音乐

可以看出,安卓在安装APP后大小出现翻倍的情况,因为安卓系统在安装过程中会进行编译,所以安装完后APP的实际占用空间就出来了。这也解答了不少网友的疑问,即在安卓上安装一个十几MB的APP,装完后存储空间却不见了上百MB。

安卓应用商店只显示APK安装文件的大小,而在App Store上显示的APP大小是安装到手机后的实际占用空间。这样的好处是,用户可以直观地知道自己手机还够不够容量安装新的APP,而不会出现明明手机设置里显示还有几十MB空余存储,却连个十几MB的APP都安装不进的困惑。

当然,安卓较小的安装文件更方便下载,现在最新安卓系统(如7.1.2)已经大幅提升安装APP速度,只是在安装之前,大家需要注意预留2-3倍于安装文件的存储空间。

总结

综上所述,“为什么iOS上APP比安卓大几倍”其实是个伪问题。真实的情况是:

  • App Store上标注的APP大小是安装之后的大小,而安卓应用商店大多只显示安装文件的大小。
  • 安卓安装APP后,占用空间其实和iOS版相差不大。

文章tag标签:{1、iOS APP大小,2、安卓 APP大小,3、APP安装包,4、存储空间,5、临界区关键词,6、安装机制,7、应用商店,8、文件大小对比}


本文是基于《iOS版APP比安卓大几倍?背后原因究竟是什么?》的AI重写版本

免责声明:本站为个人博客,博客所发布的一切修改补丁、注册机和注册信息及软件的文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关,您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。 访问和下载本站内容,说明您已同意上述条款。本站为非盈利性站点,VIP功能仅仅作为用户喜欢本站捐赠打赏功能,本站不贩卖软件,所有内容不作为商业行为。