草庐IT

安卓终于支持了iOS的这功能,但说实话,有点鸡肋

世超 2023-05-25 原文

前阵子世超刷到一个新闻,大致内容是说谷歌给安卓系统推出了一个名为 “ 应用自动归档 ” 功能,有了这个功能后,不用卸载 App 就能释放存储空间。

​ 一开始我还以为谷歌整了个什么黑科技,看完新闻才发现原来这功能说白了就是保留数据卸载 App,隔壁果子早八百年前就已经给 iOS 用上了。

它的原理大概是这样的。

当系统检测到手机存储空间不足时,那些使用频率特别低的 App 就会被系统自动删除,只不过删的只是 App 自身的数据,图标和用户数据则还保留着。

 这么一来除了可以给手机腾出更多空间,而当你想再次使用这个 App,只要在桌面点击图标重新下载就行,打开后你会发现原先所有数据都在。​

​这功能听起来貌似还不错是吧?确实不错。

不过在我看来它在安卓端是属于那种有点用处但是不是特别有用的那种,因为如果你在手机设置里查看空间使用情况,会发现 App 基本没占多少空间。

就拿我自己这台已经使用了大半年的手机来说吧。

 其中的吃空间大户就是微信,单就它一个 App 就吃掉了 66GB,应用本身大小 1.22GB,用户数据占 6​5GB,缓存则是占了 3.76GB,果然小而美。

而其它占用空间比较大的 App 比如微博、小红书、网易云等等,几乎都是用户数据占了大头,缓存数据其次,App 本身仅仅只占用了很小一部分空间。

可以这么说,只要我挑几个 App 清下缓存,腾出来的空间可能就够我多下十几个 App,而且安卓自带清除缓存功能,更别提手机管家还能一键清缓存。

 反倒是苹果,在设置里只提供了 “ 卸载 App ” 或者 “ 删除 App ” 的选项。

在清理的时候你要么选择把用户数据和缓存一起保留,要么索性把整个 App 一股脑全都删了,又或者等系统自动帮你卸载那些不经常使用的 App。

​ 考虑到 iOS 的封闭性,那些第三方清理软件根本没权限去管理和清理其它 App 的数据,所以对苹果用户来说保留数据卸载 App 这功能还挺实用~

话说回来,面对日益臃肿的 App,厂商们为了帮你节省手机存储空间,这些年来可没少花心思。​

比如谷歌早在 2019 年的 Google I/O 大会上,就推出过一种新的安装包格式 aab,相比传统的 apk 格式安装包,它可以减少一款 App 约 20% 的体积。

只不过国内安卓市场是啥情况大家也都知道,基本每家厂商都会手机内置自家应用商店,而且市面上还有诸如酷安、豌豆荚等等各种第三方商店存在。

 所以 aab 在国内没怎么推广起来,目前谷歌商店倒是已经强制要求使用 aab~

​你别说,我随意找了几个 App,对比它们上架在谷歌商店和手机自带商店中的安装包大小,发现谷歌商店的安装包体积确实会比手机自带商店要小些。

 当然了,一款 App 体积再怎么精简也省不了多少空间,所以也有几家手机厂商把注意力放在了解决重复文件上。

你看像华为在 Mate 50 系列上首发的超空间存储压缩就是通过删除手机系统里的重复文件,无损压损低使用率文件,从而达到节省手机空间的目的。

 还有小米在去年 12 月初发布的 MIUI 14 系统里,也提供了系统层重复文件合并功能,而且它还比谷歌更早一步支持上了自动压缩低频 App。

不过话又说回来,前面这些手段在我看来还是有些治标不治本,要我说,下次换机的时候还不如直接买台 512GB 或者 1TB 版本的手机来得实在。

 比起苹果黄金般金贵的硬盘,安卓这边通常只要加三百就能让手机容量翻个倍,可以说量大管饱,毕竟在大容量面前,其它一切都是花里胡哨~

有关安卓终于支持了iOS的这功能,但说实话,有点鸡肋的更多相关文章

  1. ruby - 如何验证 IO.copy_stream 是否成功 - 2

    这里有一个很好的答案解释了如何在Ruby中下载文件而不将其加载到内存中:https://stackoverflow.com/a/29743394/4852737require'open-uri'download=open('http://example.com/image.png')IO.copy_stream(download,'~/image.png')我如何验证下载文件的IO.copy_stream调用是否真的成功——这意味着下载的文件与我打算下载的文件完全相同,而不是下载一半的损坏文件?documentation说IO.copy_stream返回它复制的字节数,但是当我还没有下

  2. Ruby 文件 IO 定界符? - 2

    我正在尝试解析一个文本文件,该文件每行包含可变数量的单词和数字,如下所示:foo4.500bar3.001.33foobar如何读取由空格而不是换行符分隔的文件?有什么方法可以设置File("file.txt").foreach方法以使用空格而不是换行符作为分隔符? 最佳答案 接受的答案将slurp文件,这可能是大文本文件的问题。更好的解决方案是IO.foreach.它是惯用的,将按字符流式传输文件:File.foreach(filename,""){|string|putsstring}包含“thisisanexample”结果的

  3. ruby-on-rails - Cucumber 是否只是 rspec 的包装器以帮助将测试组织成功能? - 2

    只是想确保我理解了事情。据我目前收集到的信息,Cucumber只是一个“包装器”,或者是一种通过将事物分类为功能和步骤来组织测试的好方法,其中实际的单元测试处于步骤阶段。它允许您根据事物的工作方式组织您的测试。对吗? 最佳答案 有点。它是一种组织测试的方式,但不仅如此。它的行为就像最初的Rails集成测试一样,但更易于使用。这里最大的好处是您的session在整个Scenario中保持透明。关于Cucumber的另一件事是您(应该)从使用您的代码的浏览器或客户端的角度进行测试。如果您愿意,您可以使用步骤来构建对象和设置状态,但通常您

  4. Get https://registry-1.docker.io/v2/: net/http: request canceled while waiting - 2

    1.错误信息:Errorresponsefromdaemon:Gethttps://registry-1.docker.io/v2/:net/http:requestcanceledwhilewaitingforconnection(Client.Timeoutexceededwhileawaitingheaders)或者:Errorresponsefromdaemon:Gethttps://registry-1.docker.io/v2/:net/http:TLShandshaketimeout2.报错原因:docker使用的镜像网址默认为国外,下载容易超时,需要修改成国内镜像地址(首先阿里

  5. 安卓apk修改(Android反编译apk) - 2

    最近因为项目需要,需要将Android手机系统自带的某个系统软件反编译并更改里面某个资源,并重新打包,签名生成新的自定义的apk,下面我来介绍一下我的实现过程。APK修改,分为以下几步:反编译解包,修改,重打包,修改签名等步骤。安卓apk修改准备工作1.系统配置好JavaJDK环境变量2.需要root权限的手机(针对系统自带apk,其他软件免root)3.Auto-Sign签名工具4.apktool工具安卓apk修改开始反编译本文拿Android系统里面的Settings.apk做demo,具体如何将apk获取出来在此就不过多介绍了,直接进入主题:按键win+R输入cmd,打开命令窗口,并将路

  6. ruby - 为什么不能使用类IO的实例方法noecho? - 2

    print"Enteryourpassword:"pass=STDIN.noecho(&:gets)puts"Yourpasswordis#{pass}!"输出:Enteryourpassword:input.rb:2:in`':undefinedmethod`noecho'for#>(NoMethodError) 最佳答案 一开始require'io/console'后来的Ruby1.9.3 关于ruby-为什么不能使用类IO的实例方法noecho?,我们在StackOverflow上

  7. ruby-on-rails - rails 功能测试 - 2

    在Rails自动生成的功能测试(test/functional/products_controller_test.rb)中,我看到以下代码:classProductsControllerTest我的问题是:方法调用products()在哪里/如何定义?products(:one)到底是什么意思?看代码,大概意思是“创建一个产品”,但是它是如何工作的呢?注意我是Ruby/Rails的新手,如果这些是微不足道的问题,我深表歉意。 最佳答案 如果您查看test/fixtures文件夹,您会看到一个products.yml文件。这是在您创建

  8. ruby - 如何使用 readline 支持重新安装 ruby​​? - 2

    我已经按照https://github.com/wayneeseguin/rvm#installation上的说明通过RVM安装了Ruby.有关信息,我有所有文件(readline-5.2.tar.gz、readline-6.2.tar.gz、ruby-1.9.3-p327.tar.bz2、rubygems-1.8.24.tgz、wayneeseguin-rvm-stable.tgz和yaml-0.1.4.tar.gz)在~/.rvm/archives目录中,我不想在任何目录中重新下载它们方式。当我这样做时:sudo/usr/bin/apt-getinstallbuild-essent

  9. ruby-on-rails - "undefined method ` stub_request '"访问 RSpec 支持文件中的方法时 - 2

    我的Ruby-on-Rails项目中有以下文件结构,用于规范:/spec/msd/serviceservice_spec.rb/support/my_modulerequests_stubs.rb我的request_stubs.rb有:moduleMyModule::RequestsStubsmodule_functiondeflist_clientsurl="dummysite.com/clients"stub_request(:get,url).to_return(status:200,body:"clientsbody")endend在我的service_spec.rb我有:re

  10. ruby-on-rails - 功能测试 Authlogic? - 2

    在我的一些Controller中,我有一个before_filter检查用户是否登录?用于CRUD操作。application.rbdeflogged_in?unlesscurrent_userredirect_toroot_pathendendprivatedefcurrent_user_sessionreturn@current_user_sessionifdefined?(@current_user_session)@current_user_session=UserSession.findenddefcurrent_userreturn@current_userifdefine

随机推荐