因为标记为“已删除”需要一段时间。Android也需要共享库,这是所有大型程序所必需的。比如Android,会把1 G的单个apk拷贝到手机存储,有的需要预编译。当然有时候需要清理这个apk产生的垃圾文件,但是按照安卓的惯例,数量不多。Windows的大型软件通常是不“绿”的,需要安装,而且安装后不止一个文件。

手机应用软件真的需要几天就更新吗,有这必要吗?

手机应用软件真的需要几天就更新吗,有这必要吗

其实个人觉得更新不更新软件,这个是一个个人习惯,如果你日常使用正常,且没有什么新功能的需求的话,可以不更新,但是脚标上那个数字的增加也可能会增加你的焦虑。强迫症患者一般看见有数字都会去点掉,想办法把它消除掉。更新其实只是小功能的更新或者是部分bug的修复。如果碰到了非常重要的大版本更新的话最好去更新一下,不过也可以,不要第一时间去进行更新,毕竟很多的公司推版本更新的时候,测试不完全经常会导致反而变得不好用。

为什么手机卸载一个几个G的软件瞬间就完成了,而电脑却需要很长的时间?

为什么手机卸载一个几个G的软件瞬间就完成了,而电脑却需要很长的时间

苹果iOS不了解,所以这里只讨论安卓和Windows在安装软件方面的区别。Windows的大型软件通常都不是“绿色”的,需要安装,而且安装后的文件还不止一个。往往至少有一个exe文件,还有若干个dll,以及其他的资源文件(图片、视频、本地数据库等)。其中dll叫做动态链接库,可以用来和其他程序进行共享。

比方说视频解码功能,就可以编写一个专门的dll。另外Windows还有一个com机制,它的dll共享功能更加强大,但是必须注册。所谓注册,就是写入注册表,通知操作系统其他软件如何调用它。请注意,虽然开发人员不会经常自己写dll,但是会调用别人写好的共享dll,所谓的拿来主义。而使用它们,就必须在安装时也一并装上,注册上。

Windows的这种共享机制,使得Windows大型程序往往都有很多很多文件,还有很多很多写入注册表和写入系统目录的操作。安卓的安装就显得简单很多。安卓同样也需要共享库,这是所有大型程序都必须的。但是安卓在安装是会把这些库,还有资源文件全部压缩打包(zip),变成一个apk文件。如果一个APP有1G,即是指这个apk单个文件有1G。

如果是Windows,则可能是指成千上万个文件加起来1G。因为Windows没有打包。安卓的这种安装部署方式的好处就是简单,坏处就是没有实现真正的共享,造成空间浪费。这个好处坏处就不再展开讨论。反正大家现在明白了,安装时,安卓是将所有文件打包成一个文件,Windows不打包。在安装时,不管是Windows还是安卓,面对大型软件都是比较慢的,甚至超过1分钟。

比如安卓,会将1个G的单个apk复制到手机存储上,有的还需要预编译。不过这不是重点,我们关注的是卸载速度。重点来了,为什么卸载时安卓几乎是“秒卸”,而Windows很慢?刚说了,安卓安装时只有一个apk文件,卸载的时候删除这一个文件就可以了,一秒钟都用不了。当然有时也需要清理这个apk所产生的垃圾文件,不过按照安卓的惯例,数量都不多。

再看Windows,那文件就多了,一堆dll,一堆资源文件,还要对注册表进行逐一清理。我们再看看为什么删除一个大型文件很快,哪怕是1个G甚至几十G都用不了1秒?这在安卓和Windows上都同样适用,删除单个文件都快。因为删除文件的时候并没有彻底把文件清零,而仅仅是把这个文件的占用区域做一个标记,标记为“已删除”。

彻底删除你在Windows上听到的。这叫“碾压”。一些第三方软件(360等。)有这个功能。反之,删除太多文件,时间会很长,积少成多。因为标记为“已删除”需要一段时间。删除的长度主要取决于文件的数量,而不是文件的总大小。比如删除一个文件需要1秒,那么删除3600个文件就需要1个小时(例子有点夸张)。


文章TAG:App  app  图标  多款  提交  
下一篇