V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
Keppel
V2EX  ›  程序员

今天看了一个视频:《离谱!占据 650MB 空间的微信输入法,到底装了啥?》,能从技术角度分析这么做的原因吗?

  •  
  •   Keppel · 2024-08-07 17:29:45 +08:00 · 11429 次点击
    这是一个创建于 390 天前的主题,其中的信息可能已经有所发展或是发生改变。
    88 条回复    2024-11-30 11:56:18 +08:00
    Nick
        1
    Nick  
       2024-08-07 17:31:45 +08:00
    家族传统
    crc8
        2
    crc8  
       2024-08-07 17:55:59 +08:00
    诗山有山勤为径?
    crc8
        3
    crc8  
       2024-08-07 17:56:33 +08:00
    @crc8 打错字。诗山有路勤为径
    cbythe434
        4
    cbythe434  
       2024-08-07 17:58:45 +08:00
    搞模型推理预测下一个词
    liuidetmks
        5
    liuidetmks  
       2024-08-07 18:01:23 +08:00
    真正的小而美,就不应该联网,那才是小而美
    paopjian
        6
    paopjian  
       2024-08-07 18:16:07 +08:00   ❤️ 2
    微信这种同一个文件存好几次是怎么成为企业文化了, 会不会是他们用的屎山代码里校验文件相同的代码写错了,导致每次都会新存一遍?据说手机厂商都自己在系统里去优化微信存储了,也是很神奇
    levelworm
        7
    levelworm  
       2024-08-07 19:11:20 +08:00 via Android
    好像很少看到对微信系列产品的技术深挖,不知道为什么。
    miaomiao888
        8
    miaomiao888  
       2024-08-07 19:19:25 +08:00   ❤️ 6
    开发团队不够协调吧,反正就是你拉一坨我拉一坨各拉各的,微信产品本身没有用户,你以为自己是用户但其实在他们眼里是商品,谁会在乎商品的使用感受呢。
    basncy
        9
    basncy  
       2024-08-07 19:25:06 +08:00   ❤️ 1
    Windows 和 Linux 的文件系统不一样. 它在 windows 上解压出来, 会丢失很多信息, 没参考意义,看到的只是表象.
    CodeLaunchur
        10
    CodeLaunchur  
       2024-08-07 19:28:50 +08:00
    小而美的基本操作
    sagaxu
        11
    sagaxu  
       2024-08-07 19:36:48 +08:00   ❤️ 1
    不自带个浏览器引擎和游戏引擎,都不好意思自称腾讯出品
    DOLLOR
        12
    DOLLOR  
       2024-08-07 19:39:11 +08:00
    @paopjian
    据说苹果的文件系统,对完全相同的文件,只会存储一份。
    不过我没验证过,也不知真假。🐶
    RiverMud
        13
    RiverMud  
       2024-08-07 19:40:53 +08:00 via iPhone
    @paopjian 据说是 QQ 邮箱的“遗产”,邮箱可不得来一份存一份嘛!
    kyor0
        14
    kyor0  
       2024-08-07 19:58:59 +08:00
    里面有个虚幻 5
    ARslince
        15
    ARslince  
       2024-08-07 20:53:30 +08:00 via iPhone
    @DOLLOR jin
    ARslince
        16
    ARslince  
       2024-08-07 20:53:51 +08:00 via iPhone
    @ARslince 不好意思,误触 点错了
    Rh1
        17
    Rh1  
       2024-08-07 23:10:06 +08:00   ❤️ 5
    不是很理解为什么很多用拼音打字的要去使用第三方输入法,我就是想打个字而已要那么多功能干嘛。iOS 就一直用自带,自从换了安卓就一直在用 Gboard ,Windows 里也一直在用系统自带。有和我一样的吗?
    Mqzo
        18
    Mqzo  
       2024-08-07 23:38:25 +08:00 via Android
    @Rh1 一样。打字嘛,慢一点就慢一点了。gboard 也可以滑动输入,也可以学词。
    yongSir
        19
    yongSir  
       2024-08-08 08:57:23 +08:00
    这就是取舍问题了,想到为了用户安全连接甚至 pc 上普及了扫码登录这种逆天到完全牺牲体验的活儿,结果用户选择了第三方输入,就有一种前方吃紧后方紧吃的即视感 🐶
    wang93wei
        20
    wang93wei  
       2024-08-08 09:07:14 +08:00
    都已经 2024 年了,手机存储空间也不比当年了。
    为什么还在有人纠结占用了多少空间?
    我同学习惯删除手机内没用的软件、照片、聊天记录,不喜欢拍照片,他到现在还觉得 64G 就够用了。
    一个仅仅只有 650MB 空间的输入法,却还能被吐槽,也是很不太理解。
    xing3kong
        21
    xing3kong  
       2024-08-08 09:24:28 +08:00 via iPhone   ❤️ 3
    @wang93wei 手机空间再大,也不是给他们滥用的
    136178128
        22
    136178128  
       2024-08-08 09:35:53 +08:00
    @wang93wei 不是在意他占用空间,而是竞品能做到这么小,而你需要这么大,多出来的到底是在做了什么事情?我觉得标题说得很清楚了。
    ysxb1145
        23
    ysxb1145  
       2024-08-08 09:38:18 +08:00 via Android
    @DOLLOR 也没见苹果微信占用小啊,问题是苹果的文件压根看不到
    ysxb1145
        24
    ysxb1145  
       2024-08-08 09:39:08 +08:00 via Android
    @Rh1 gboard 语音在大多数不会爬墙的人来说根本没法用
    ma836323493
        25
    ma836323493  
       2024-08-08 09:41:39 +08:00
    @wang93wei #20 一个小小输入法占用 650M ,你来一下他来一下, 内存怎么够用。再说你同学的习惯也是极少数
    echoZero
        26
    echoZero  
       2024-08-08 09:45:54 +08:00
    需求满足是基本要求,然后才是 优化
    echoZero
        27
    echoZero  
       2024-08-08 09:46:39 +08:00
    苹果版本的 地震预警 APP 曾经大小超过 1 个 G
    diivL
        28
    diivL  
       2024-08-08 09:48:49 +08:00
    说难听点就是技术不行,产品不过是钱堆出来的
    exmario
        29
    exmario  
       2024-08-08 10:00:17 +08:00
    @wang93wei 你不在意存储但在意存储的人很多啊
    shijingshijing
        30
    shijingshijing  
       2024-08-08 10:01:30 +08:00
    挺好的,垃圾产品配垃圾用户,还好这玩意不像微信是刚需。
    nanxiaonan
        31
    nanxiaonan  
       2024-08-08 10:06:58 +08:00
    @yongSir 扫码登陆这个功能 体验不好吗 我觉得挺好用的啊
    Harharhar
        32
    Harharhar  
       2024-08-08 10:07:29 +08:00
    @Rh1 我之前也是只用自带的输入法,直到遇到 mac 自带输入法的 bug

    mac 经常莫名其妙卡死,按 v2 老哥说的方法 kill 掉 mac 自带输入法的进程就恢复了,换第三方输入法后再没出现过...
    这个 bug 好多年了都没修
    libasten
        33
    libasten  
       2024-08-08 10:07:39 +08:00
    居然没有超过 1G ?
    Rh1
        34
    Rh1  
       2024-08-08 10:11:30 +08:00
    @Harharhar 这么可怕?没用过 mac
    zcybupt2016
        35
    zcybupt2016  
       2024-08-08 10:15:33 +08:00
    @Harharhar macOS 14.2 已经修了这个 bug ,可以更一下

    详见: https://www.v2ex.com/t/998097
    kuaner
        36
    kuaner  
       2024-08-08 10:18:42 +08:00
    输入法只用原生的就够了
    BigMikey
        37
    BigMikey  
       2024-08-08 11:02:49 +08:00 via iPhone
    @DOLLOR #12 是真的,已經驗證過了
    liyanjun
        38
    liyanjun  
       2024-08-08 11:19:12 +08:00
    @wang93wei 仅仅只有 650MB 空间的输入法,你这个仅仅加的也是很不太理解
    levelworm
        39
    levelworm  
       2024-08-08 11:21:57 +08:00
    最烦的就是和国内交流微信是刚需。让他做大了对消费者来说真是不好。
    hsiaochi
        40
    hsiaochi  
       2024-08-08 11:24:52 +08:00
    远离低俗软件 眼不见心不烦
    AFLuo
        41
    AFLuo  
       2024-08-08 11:29:31 +08:00
    @Rh1 ios 我一直用自带的,但是 windows 的输入法太笨了
    kamilic
        42
    kamilic  
       2024-08-08 11:29:40 +08:00
    终于修了,淦
    126ium
        43
    126ium  
       2024-08-08 12:00:20 +08:00 via Android
    @wang93wei 我的手机存储不是卫生间,什么牛鬼蛇神都能来拉一坨
    leegradyllljjjj
        44
    leegradyllljjjj  
       2024-08-08 12:12:49 +08:00 via iPhone
    狗产品:短视频,直播,商城都给我弄上!
    pursuer
        45
    pursuer  
       2024-08-08 12:12:53 +08:00
    @nanxiaonan 问题不是扫码登录功能体验, 而是有些应用它“只”支持扫码登录
    Gorvery
        46
    Gorvery  
       2024-08-08 12:32:29 +08:00 via Android
    @Rh1 主要是系统自带的和 Gboard 在中文的词库推荐或者联想方面做得不是很好,打字效率上会稍微慢一点点,九宫格输入的时候尤为明显
    ke1e
        47
    ke1e  
       2024-08-08 13:10:47 +08:00
    安卓上面 Gboard 真的没有微信输入法好用
    SoyaDokio
        48
    SoyaDokio  
       2024-08-08 13:58:33 +08:00
    @levelworm #7
    南山必胜客:律师函警告
    bclerdx
        49
    bclerdx  
       2024-08-08 14:01:45 +08:00 via Android
    @SoyaDokio 警告了又如何?
    SoyaDokio
        50
    SoyaDokio  
       2024-08-08 14:02:37 +08:00
    @nanxiaonan #31 对我这样不喜欢带手机的人而言,体验很差 :(
    kokerkov
        51
    kokerkov  
       2024-08-08 14:06:50 +08:00
    @wang93wei
    Fcitx 一个 44MB 的 apk 就可以实现,做了近 15 倍的体积。难道是加了高清材质包?
    Building
        52
    Building  
       2024-08-08 14:08:29 +08:00
    import FrameworkA
    import FrameworkA
    import FrameworkA
    Building
        53
    Building  
       2024-08-08 14:10:01 +08:00
    开发人员,也不知道怎么回事啊,就差不多

    import FrameworkA
    import FrameworkB
    import FrameworkC
    import FrameworkD

    ...

    builld

    ...

    app size: 650MB

    就是这样
    szpinc1102
        54
    szpinc1102  
       2024-08-08 14:25:22 +08:00
    @levelworm 因为微信根本没有值得深挖的技术
    laommmm
        55
    laommmm  
       2024-08-08 14:29:41 +08:00
    商品推荐算法,关键词提取,历史搜索数据。。。。。
    以及各厂商打通的广告推荐算法。。。。。等等等等。。。。
    ivvei
        56
    ivvei  
       2024-08-08 14:48:54 +08:00 via Android
    就是家族传统吧。微信也是重复文件各种存。既然叫微信输入法,那么自然要有这个特色。 末尾的猜想大概率是想多了,腾讯的开发水平就那样而已
    youyoumarco
        57
    youyoumarco  
       2024-08-08 16:24:39 +08:00
    企业微信 更离谱
    GPT6
        58
    GPT6  
       2024-08-08 17:13:26 +08:00   ❤️ 1
    又不是不能用
    ButcherHu
        59
    ButcherHu  
       2024-08-08 17:25:47 +08:00
    @DOLLOR apfs 确实有去重
    ButcherHu
        60
    ButcherHu  
       2024-08-08 17:30:43 +08:00
    600m 不是啥大问题,毒性不强。
    最毒的是微信转发文件会复制一份,我人都傻了。
    ivvei
        61
    ivvei  
       2024-08-08 17:34:29 +08:00 via Android   ❤️ 1
    @ButcherHu 因为张小龙是做 foxmail 出身的,走的邮件逻辑。邮件你转发附件就是复制一份嘛
    ButcherHu
        62
    ButcherHu  
       2024-08-08 17:47:01 +08:00
    @ivvei 感觉很有道理,我有点适应这个设定了 lol ,这样还没有一致性问题
    songunity
        63
    songunity  
       2024-08-08 18:06:14 +08:00
    就是水平不行
    jasonmao0
        64
    jasonmao0  
       2024-08-08 18:08:21 +08:00
    最近手机和电脑刚刚改用了微信输入法,主要是消费降级手机从苹果换成了安卓,电脑用 mac 习惯了,微信输入法能在不同设备之间直接复制粘贴,感觉正好命中我的需求就使用了
    irrigate2554
        65
    irrigate2554  
       2024-08-08 18:23:13 +08:00
    其实从程序员的角度来说,这种情况的出现还是有可能的,虽然确实是程序垃圾,到也不需要黑暗猜想。
    以下是程序员角度的出现这种问题的猜想:
    1. 这几个资源文件就是设计为可以热更新的,UP 使用时间不长或者 APK 太新就还没有热更
    2. resource.apk 就是热更新包,应用启动后直接下载了最新版本更新包,这里偷懒没有对比和本地 apk 中版本是否一致
    3. 用户数据中的重复文件就是从 resource.apk 解压出来的,这里偷懒解压后没有删除 resource.apk

    就是这两次偷懒导致出现了三份一样的文件,应用大小也不是任何人的 KPI 所以没有任何人关系这件事
    Mandelo
        66
    Mandelo  
       2024-08-08 18:56:36 +08:00
    @Rh1 #17 热词,网络流行词,专业词汇系统打的太慢了
    leconio
        67
    leconio  
       2024-08-08 18:59:04 +08:00 via iPhone
    放了个模型?猜你想打?哈哈
    W4J1e
        68
    W4J1e  
       2024-08-08 20:45:55 +08:00
    @Rh1 恰好最近又很关注输入法,并且前几周体验了 Gboard ,上上次体验还是十年前。
    不得不说 Gboard 真的很干净和纯粹,不富强也不下载离线语音包的情况下竟然能语音输入。
    一开始用 26 键,因为它强大的纠错,觉得甚至可以盲打,非常舒服。但是后来才发现,它偶尔会夹杂一些数字在其中,就导致后面打的都不对,只能按删除(不是一键重输);还有标点符号缺失,比如中文的书名号,省略号等。
    干净是干净,但是我不太能习惯。
    iutopia
        69
    iutopia  
       2024-08-08 21:09:35 +08:00
    @RiverMud 那就不奇怪了。张小龙最新开发的就是 foxmail=>>qq 邮箱=>>微信
    loading
        70
    loading  
       2024-08-08 21:15:47 +08:00
    微信消息框,删除聊天在本地是真删除还是本地数据库标记,我只想知道一下这个。
    Tlvncks
        71
    Tlvncks  
       2024-08-08 21:59:53 +08:00
    @wang93wei #20 大部分月薪两三千块钱的叔叔阿姨们的手机都是千元机,并且还都用了三五年,他们手机内存并不像年轻人这么好。
    levelworm
        72
    levelworm  
       2024-08-09 00:49:48 +08:00
    @loading 有时候删除完了存储空间能够多一点出来,我估计是真删除。
    fpk5
        73
    fpk5  
       2024-08-09 01:33:27 +08:00
    @wang93wei #20 如果我没记错 windows xp 的 iso 镜像也就是 600MB 左右
    muapyw
        74
    muapyw  
       2024-08-09 02:41:18 +08:00
    这些国产 3A 没有一个不辣鸡的,百度,字节,快手,阿里,腾讯

    空间占用多,内存占用夸张,一个短视频 app ,刷视频内存占用能高达 4G
    jim9606
        75
    jim9606  
       2024-08-09 02:42:32 +08:00
    1. app 本身自更新困难是这样的,至少目前看膨胀的都是非可执行的代码,模型词库有热更能力相当合理,想不留垃圾的话,你要有能力天天发版静默更新,那可以不做热更的
    2. 存放 apk 里解压的资产,可能是处于性能考虑,依靠系统实时解压有开销
    3. 不能将 apk 解压缩的体积理解为安装体积,全新安装增加的体积来自原生库解压和 dexoat ,虽然可以设置 extractNativeLibs=false 来避免前者的原生库解压开销(但会使 apk 显著变大),但好像不管国内外的 app 都很少这么干,可能是有次生 bug ,或者觉得这是负优化?
    4. 拿游戏来对比喷,很难评,游戏带废弃资产更常见,不然咋那么多扒资产的例子,另外游戏有非常合理的理由用空间换性能
    5. 一跟机器学习模型扯上关系就别想省存储空间了,不费空间的是云服务
    akiyamaakira
        76
    akiyamaakira  
       2024-08-09 08:21:32 +08:00
    所以这个时候开源就派上用场了: https://github.com/osfans/trime/releases

    https://rime.im/download/
    wanwaneryide
        77
    wanwaneryide  
       2024-08-09 09:58:39 +08:00
    @wang93wei 很多人都是因为手机内存不够用了,被逼着换手机的。
    shijingshijing
        78
    shijingshijing  
       2024-08-09 11:00:41 +08:00
    @loading 标记,而且悄悄告诉你,虽然苹果 APFS 支持冗余文件检测,但是其实在微信里面,仅限于你同时将一份文件发送给 N 个人这一个场景。其他场景,比如你加了四五个群,每个群里都收到别人转的同一段聊天记录,这个聊天记录只是单纯的转发,里面所有的文字、图片、视频在微信里面都会单独保存一份。iOS 系统下是保存在 OpenData 目录下,比如/private/var/mobile/Containers/Data/Application/FF43CB78-C20B-885B-2AE2-A45DEB5AEB45/Documents/91pebwp1dwoj6lhrdyz4ya65/OpenData/h6121m3rx17yjsq7w06f9aaf/1.avi
    其中,FF43CB78-C20B-885B-2AE2-A45DEB5AEB45 是微信 App 的 UUID ;
    91pebwp1dwoj6lhrdyz4ya65 是你的 ID ;
    h6121m3rx17yjsq7w06f9aaf 是群的 ID 。

    此外,公众号给你发送的那种带图文的内容,你也是无法删除的;所有的缩略图,你均无法通过微信本身删除,一张图片至少会有两张缩略图,分别是聊天记录里面你没点开时的预览缩略图,你在批量预览所有图片时,生成的那种小筐缩略图。此外,如果不幸你的朋友或者你加的群里有人总是喜欢发原图,那么微信还会贴心的给你把原图保存成 IMG2828_HD.dat 这种图片,然后给你弄个压缩后的 IMG2828.dat 图。
    zachary99
        79
    zachary99  
       2024-08-09 11:09:34 +08:00 via Android   ❤️ 1
    还好吧,我记得 gboard 也要 400 多兆,微信输入法比 gboard 功能多太多了,我就是受不了 gboard 的联想和词库,才用的微信输入法
    lihaohenqiang
        80
    lihaohenqiang  
       2024-08-09 13:38:35 +08:00 via iPhone
    小而美×
    臃而肿√
    shintendo
        81
    shintendo  
       2024-08-09 17:49:35 +08:00
    我用微信输入法的原因:它是市面上还在维护的 PC 输入法里唯一有多行候选的
    bytealan
        82
    bytealan  
       2024-08-09 18:20:55 +08:00
    @Rh1 #17 表情包中毒爱好者 他能帮我直接搜表情包发出去
    Rh1
        83
    Rh1  
       2024-08-09 21:05:53 +08:00
    @bytealan 哦,那就算刚需了
    kokerkov
        84
    kokerkov  
       2024-08-10 08:12:59 +08:00
    @jasonmao0 不知道 mac 下是不是唯一的。win 下至少有 kde-connect 和微软的手机应用两种替代。
    Cybrox
        85
    Cybrox  
       2024-08-10 14:45:16 +08:00
    @DOLLOR 这是苹果的 APFS 文件系统的功能,但是它并不是“完全相同的文件,只会存储一份”,而是“同一个文件的拷贝只会存储一份”。也就是说你从网上下载 N 份相同的文件,因为它们之间并不是“拷贝”的关系,所以依然会存储 N 份
    youshangdemajia
        86
    youshangdemajia  
       2024-08-10 22:57:59 +08:00
    其实大公司的代码一样可以很垃圾,尤其是那些没有 code review 传统的公司。每个人都是随意提交,随意修改,质量参差不齐,总体上能不差吗?
    外表能用就行了,底层管它的。
    unidotnet
        87
    unidotnet  
       2024-08-11 20:01:32 +08:00
    你们觉得垃圾我觉得挺好的,微信输入法刚出来的时候就用了,主要是 1.无广告 2.我打字的习惯错别字少 3.macOS 下不卡机 4.多设备同步(这点不是很重要)
    ZX16815
        88
    ZX16815  
       275 天前
    一直用系统自带的输入法,搞不懂一个破输入法有啥好折腾的。(除了 linux 会装个第三方)
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   920 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 21:50 · PVG 05:50 · LAX 14:50 · JFK 17:50
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.