V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
kayv
V2EX  ›  程序员

为什么 PDD 这么丝滑顺畅

  •  
  •   kayv · 2023-03-07 21:44:13 +08:00 · 15261 次点击
    这是一个创建于 634 天前的主题,其中的信息可能已经有所发展或是发生改变。

    背景:后端老码农一枚,不是很懂 App 开发技术。

    问题:为什么 pdd 刷起来这么流畅,有客户端 RD 来解答一波吗

    APP 里嵌 webview 可以这么丝滑吗

    我在红米 9,4g 运存上跑 pdd 都很流畅,其他 App 几乎不用玩了,唯独 pdd 依然流畅。

    谢谢各位

    99 条回复    2023-03-14 17:41:17 +08:00
    wetalk
        1
    wetalk  
       2023-03-07 21:47:03 +08:00 via iPhone   ❤️ 3
    iOS 端 PDD 不到 100 兆,淘宝和狗东 200 多兆
    paradoxs
        2
    paradoxs  
       2023-03-07 21:48:06 +08:00   ❤️ 3
    里面没多少东西啊。 iOS 的客户端才 80 多 MB

    淘宝是接近 300M
    lijianqiang12
        3
    lijianqiang12  
       2023-03-07 21:54:12 +08:00   ❤️ 25
    因为 pdd 目标用户用的都是低端机,所以需要下大力气优化。
    makelove
        4
    makelove  
       2023-03-07 21:54:47 +08:00
    4g 的 android 机子跑淘宝简直噩梦,一点开就占 1.6G 内存,但 PDD 毫无压力
    smallthing
        5
    smallthing  
       2023-03-07 21:56:11 +08:00   ❤️ 26
    冷知识,app 是否流畅和包的大小没有一毛钱关系
    leeton
        6
    leeton  
       2023-03-07 21:56:25 +08:00 via iPhone
    里面没有屎山代码
    owen800q
        7
    owen800q  
       2023-03-07 22:01:40 +08:00
    试试用 webview 套 vant, 体验和原生比有过之而无不及
    WebKit
        8
    WebKit  
       2023-03-07 22:22:18 +08:00 via Android   ❤️ 3
    主要是没有黑科技,你看看淘宝,各种跨平台框架,各种 SDK 能不慢吗?
    Kiriya
        9
    Kiriya  
       2023-03-07 22:29:38 +08:00
    其他 APP 恨不得塞进去一个系统,直播视频地图什么卡塞什么
    ragnaroks
        10
    ragnaroks  
       2023-03-07 22:35:27 +08:00   ❤️ 2
    一些休闲手游本质就是 webview 套壳浏览器,完全不会卡。像支付宝和淘宝这种启动超过 1 秒的都是加载了一堆第三方 SDK
    ragnaroks
        11
    ragnaroks  
       2023-03-07 22:36:13 +08:00
    接上:
    ,而且很多 SDK 还是以同步方式调用的,其中可能有某种初始化或者数据获取,造成一个阻塞的卡顿体验
    Saxton
        12
    Saxton  
       2023-03-07 22:41:36 +08:00   ❤️ 8
    1. PDD 的业务没有淘宝和京东复杂
    2. PDD 收编了很多做优化的技术人员,对整个 APP 进行了底层优化,都是拿低端机去做测试,不像阿里那样动不动就上 32G 机子去测他们的应用

    上面说拼多多东西少的, 你是没深入去体验这个 APP , 你会发现,不仅可以在 PDD 上玩斗地主,打麻将,甚至可以打鱼, 种树乱七八糟的游戏
    说到底还是优化和业务发展问题,我感觉继续发展下去 PDD 也会有很卡的一天,因为他的业务肯定会不断扩展的
    Building
        13
    Building  
       2023-03-07 22:55:54 +08:00 via iPhone
    原生 + 做足优化,就是这么简单,京东淘宝那些是没优化过吗?是优化了就这样了,不然更卡
    clemente0620
        14
    clemente0620  
       2023-03-07 22:56:20 +08:00
    有专门的编译器团队做优化
    Exdui
        15
    Exdui  
       2023-03-07 23:04:35 +08:00
    @Saxton 除了打游戏,还能刷短视频
    Saxton
        16
    Saxton  
       2023-03-07 23:10:25 +08:00   ❤️ 1
    @Exdui PDD 才是缝合怪, 缝合了短视频,游戏, 迷你版的朋友圈, 购物社区,乱七八糟的啥都有
    a570295535
        17
    a570295535  
       2023-03-07 23:11:38 +08:00 via Android   ❤️ 2
    拼多多真的锤爆阿里系,阿里系不光卡,还特么天天提示更新,不把你恶心吐,他们程序员都不好意思拿工资!
    ssxs727
        18
    ssxs727  
       2023-03-07 23:20:45 +08:00
    我用 iPhone ,印象中打开拼多多确实是比淘宝那些要快很多,哪怕是手动在后台把它清除掉然后过个几秒钟再打开也是。
    silvernoo
        19
    silvernoo  
       2023-03-07 23:24:03 +08:00
    我也想学习一下,pdd 的 APP 确实有点东西。比它更流畅的只有 tg 和 gapp 系列了。
    FightPig
        20
    FightPig  
       2023-03-07 23:30:47 +08:00
    @wetalk 我手机上的淘宝和 jd 等都以 g 为单位了
    Microi
        21
    Microi  
       2023-03-07 23:32:53 +08:00
    没用过拼多多,但淘宝是真的垃圾,除了在刚上市的新旗舰上用,基本处于勉强能用和没法用的边缘,阿里不做手机亏大了。
    oneisall8955
        22
    oneisall8955  
       2023-03-07 23:38:56 +08:00 via Android   ❤️ 13
    不是 hack 系统夺取权限?前几天还热帖呢
    x86
        23
    x86  
       2023-03-07 23:49:08 +08:00 via iPhone
    @oneisall8955 问题 iOS 端也快的离谱呀
    lessMonologue
        24
    lessMonologue  
       2023-03-07 23:55:29 +08:00
    @x86 用 iphone 的没有穷人,都是高端机😊
    HongJay
        25
    HongJay  
       2023-03-07 23:56:39 +08:00   ❤️ 5
    @oneisall8955 这和流畅没关系
    kayv
        26
    kayv  
    OP
       2023-03-08 00:00:48 +08:00
    @owen800q 心动了,恨不得马上拉个移动端 rd 试试 ~ ~
    emric
        27
    emric  
       2023-03-08 01:01:49 +08:00
    我喜欢去反编译拼多多小程序的源码,前两年抄的组件我现在还在用。
    dayeye2006199
        28
    dayeye2006199  
       2023-03-08 03:25:15 +08:00
    因为购物软件只做购物
    8355
        29
    8355  
       2023-03-08 07:04:42 +08:00
    淘宝现在是最臃肿的 乱七八糟的功能一堆
    我只需要搜索和下单 现在为了推广 app 把网页端做的极其辣鸡经常滑动验证
    京东稍好一些 50 分对 70 分吧。。。
    拼多多起码只是保留购物软件的基本功能没有引入各种幺蛾子

    阿里系和腾讯系 app 是真的离谱
    高德玩连连看
    微信容量 qq 秀虚幻引擎不用再多说了吧。。。
    1KTN90lKW9gVJ9vX
        30
    1KTN90lKW9gVJ9vX  
       2023-03-08 08:17:59 +08:00 via Android   ❤️ 3
    虽然拼多多比较土,以前我还很反感,但真的很丝滑,淘宝天猫就是一坨屎。
    beginor
        31
    beginor  
       2023-03-08 08:35:42 +08:00
    在红米 K40s+MIUI14 上, 拼多多并没有适配 120 帧的刷新率,会自动降到 60 帧,感觉不够丝滑
    fackVL
        32
    fackVL  
       2023-03-08 08:50:17 +08:00 via iPhone
    我认为 APP 本身就不该那么卡
    fru1t
        33
    fru1t  
       2023-03-08 09:00:13 +08:00
    阿里防爬虫搞了太多门槛了。
    huangqihong
        34
    huangqihong  
       2023-03-08 09:20:47 +08:00
    我现在 xr 打开支付宝越来越慢了;上个手机苹果 6 ,打开支付宝得一分钟,付款更慢了,软件很少更新
    我有时候在想啊,到底是什么在变?手机变垃圾了?处理器?
    XXOO133
        35
    XXOO133  
       2023-03-08 09:21:17 +08:00
    @smallthing 还是有关系的,包大一般代表有很多莫名其妙的东西,这些东西启动起来不就卡了么。
    hhjswf
        36
    hhjswf  
       2023-03-08 09:28:47 +08:00
    用户对象是低端用户
    wetalk
        37
    wetalk  
       2023-03-08 09:30:25 +08:00
    @FightPig 我说的是安装包呀
    shellic
        38
    shellic  
       2023-03-08 09:57:31 +08:00
    是吧,淘宝能卡出屎来,阿里系的软件就是恶心人的
    ynxh
        39
    ynxh  
       2023-03-08 10:06:07 +08:00
    终于有人说了,我一直觉得 pdd 太牛逼了。。就算是砍一刀什么的各种活动广告,那也是丝滑流畅,忍不住看完动画,感觉不是什么 h5 套在里面,其他 app 的活动页一看就是个 webview 套壳
    samin
        40
    samin  
       2023-03-08 10:10:22 +08:00
    @smallthing 常识,包的大小往往和业务逻辑实现复杂程度、内存占用率高地等强关联
    jixule
        41
    jixule  
       2023-03-08 10:13:19 +08:00
    pdd 的第二页短视频真是土味拉满,还时不时出个红点没法屏蔽
    Ericality
        42
    Ericality  
       2023-03-08 10:38:05 +08:00   ❤️ 4
    这时候就要祭出这个了
    https://www.v2ex.com/t/920460#reply6
    k8ser
        43
    k8ser  
       2023-03-08 10:42:12 +08:00
    不丝滑是真的会砍他一刀呀!!!
    dsb2468
        44
    dsb2468  
       2023-03-08 10:45:22 +08:00
    yatoooon
        45
    yatoooon  
       2023-03-08 10:49:41 +08:00
    下了大力气去优化,好多公司去 pdd 取经
    dfkjgklfdjg
        46
    dfkjgklfdjg  
       2023-03-08 10:50:56 +08:00
    改版过了?以前卡成 ppt 了都快。
    ScepterZ
        47
    ScepterZ  
       2023-03-08 10:52:07 +08:00
    前阵子不是有个黑客技术和 app 相关的新闻,可见 pdd 的客户端技术是真的好
    catalysia
        48
    catalysia  
       2023-03-08 10:53:55 +08:00
    @smallthing 包小的不一定流畅 但是包大的一定不流畅
    deng81416754
        49
    deng81416754  
       2023-03-08 11:05:23 +08:00
    作为一个移动端开发者, 也想知道怎么优化的这么好的。楼主在问技术,下面却在说 pdd 利用漏洞的事情,我对此中立(对这家公司 确实感到恶心),技术无罪 看谁用,怎么用
    chrosing
        50
    chrosing  
       2023-03-08 11:21:46 +08:00   ❤️ 3
    https://mp.weixin.qq.com/s/P_EYQxOEupqdU0BJMRqWsw
    微信原文纰漏的链接 深蓝发布的
    再贴一个站内大佬逆向解包的图片

    ![]( )
    marksaas
        51
    marksaas  
       2023-03-08 11:27:34 +08:00
    很可能是把一部分数据缓存到本地了,我手机没网时候其他 app 都打不开,拼多多可以浏览商品,看视频,这真的太神奇。
    paradian
        52
    paradian  
       2023-03-08 11:31:08 +08:00
    哈哈哈哈哈,我想起来了,淘宝早年是用来测试手机性能的 app 之一
    520discuz
        53
    520discuz  
       2023-03-08 11:46:44 +08:00
    是的 就是因为拼多多顺滑 ···所以现在我根本就不想打开京东和淘宝的 APP 尽量用拼多多了
    Vveeb
        54
    Vveeb  
       2023-03-08 11:58:25 +08:00
    @Ericality #42 嚯! App 里面搞小动作然后体验还能这么丝滑,那不是更说明它 NB 了嘛(手动滑稽
    dobelee
        55
    dobelee  
       2023-03-08 12:02:20 +08:00
    很多年前不买个旗舰机是打不开淘宝的。
    Domado
        56
    Domado  
       2023-03-08 12:07:39 +08:00
    拼多多当初设计的时候就是面向低端机优化的,因为他们用户定位是如此。
    iOCZ
        57
    iOCZ  
       2023-03-08 12:18:53 +08:00
    看看技术栈是否一样,原生肯定好于 web ,weex 页面肯定没那么流畅。
    Valid
        58
    Valid  
       2023-03-08 12:25:15 +08:00
    拼多多不这么做抢不到终端用户啊
    bk201
        59
    bk201  
       2023-03-08 12:30:06 +08:00
    阿里系就是啥都往里面塞
    cvbnt
        60
    cvbnt  
       2023-03-08 12:47:49 +08:00 via Android
    拼多多就算是小程序打开速度也算最快的那批
    laduary
        61
    laduary  
       2023-03-08 12:53:46 +08:00 via Android
    拼多多上还可以加好友和打视频电话,功能也不少
    killeder
        62
    killeder  
       2023-03-08 13:39:29 +08:00
    见不得光的事要慢点,快了容易被别人看出来
    AlexaZhou
        63
    AlexaZhou  
       2023-03-08 14:32:22 +08:00
    @ragnaroks 想啥呢,支付宝和淘宝这种量级的 APP 里面,不会有任何一个第三方 SDK 。

    大公司不会接第三方 SDK ,却会做一些 SDK 给小公司接入 [狗头]
    oszlso
        64
    oszlso  
       2023-03-08 14:32:33 +08:00
    PDD 确实流畅,对比淘宝、闲鱼差别很大
    sun019
        65
    sun019  
       2023-03-08 14:50:21 +08:00
    阿里系感觉产品优问题,在淘宝上下了个淘鲜达的单,订单页面竟然和买实物的单子一致的。连快送轨迹都没有。
    我拼多多上买个实物小东西,点下购买,就直接买了(剩了下单,确认订单、支付的流程),真是丝滑。
    Ericality
        66
    Ericality  
       2023-03-08 14:59:25 +08:00
    @Vveeb 嘿 您再往下看 直接创建一个系统进程 您以为的冷启动 实际上人家是系统级权限+后台作弊(逃
    chrisia
        67
    chrisia  
       2023-03-08 15:10:07 +08:00   ❤️ 1
    我是真的服 pdd ,比系统原生 app 还流畅,打开速度也超级快
    huiyi1993
        68
    huiyi1993  
       2023-03-08 15:13:37 +08:00
    @chrisia 来前端可内推
    Ashore
        69
    Ashore  
       2023-03-08 15:17:02 +08:00
    @emric 哪个小组件啊 我瞅瞅
    weixind
        70
    weixind  
       2023-03-08 15:23:26 +08:00
    @huiyi1993 老哥留个邮箱?帮忙内推下前端呗
    huiyi1993
        71
    huiyi1993  
       2023-03-08 15:27:02 +08:00
    @weixind 961830458 企鹅
    18601294989
        72
    18601294989  
       2023-03-08 15:44:44 +08:00
    理论上就他们那些功能怎么都不会卡的吧 不知道他们客户端 的部门做了什么黑科技
    kasusa
        73
    kasusa  
       2023-03-08 15:56:03 +08:00 via iPhone
    @Kiriya 但是 pdd 也有视频,还有一堆抽奖环节,浇花种水果
    nobodyknows
        74
    nobodyknows  
       2023-03-08 16:17:49 +08:00
    和 pdd 的 app 比起来京东淘宝就是两坨屎.
    lower
        75
    lower  
       2023-03-08 16:24:18 +08:00
    pdd 有什么开源项目 或者技术博客 之类的么?
    gdrk
        76
    gdrk  
       2023-03-08 16:34:26 +08:00
    @emric 朋友反编译能给些关键字么,我按照搜到的相关教程在模拟器文件里都找不到小程序的包。。。
    chniccs
        77
    chniccs  
       2023-03-08 16:45:21 +08:00
    pdd 要是卡,砍一刀的人就更不愿意帮忙点了
    leo7723
        78
    leo7723  
       2023-03-08 17:23:53 +08:00   ❤️ 1
    安卓客户端除了提到的体量上的区别,多多 32mb 淘宝 112mb 、代码实现上的区别,多多原生淘宝 weex ,以外。
    摸鱼看了一下多多的 oat 目录确实也做了编译优化。
    多多 apk 32mb 但是 vdex 文件有 52mb ,一般都是 vdex 不会比 apk 大的,不知道这里怎么做到的。如果有大佬知道可以回复一下。
    systemcall
        79
    systemcall  
       2023-03-08 18:09:55 +08:00   ❤️ 1
    拼多多的优化确实够好
    别说拼多多功能少,拼多多的功能超级多,里面还可以刷短视频、玩游戏,各种各样的游戏,还有类似于朋友圈的拼小圈,聊天支持发送和接收红包、支持群聊,这才是真正的缝合怪
    就是淘宝和京东客户端这块技术烂,没什么别的原因。特别是阿里,客户端的技术烂得一逼,天天发明一大堆新概念罢了,开掉 80%的人可能还会更好一些,起码会踏踏实实地做东西
    monkeyzsf
        80
    monkeyzsf  
       2023-03-08 18:22:47 +08:00
    @Ericality 站内早就讨论过了,大部分更新及时的手机并不受影响,主要是老版本 Android 手机。我手里的手机也不收漏洞影响,但也是 pdd 启动、使用快于淘宝。大家讨论 pdd 的技术优化,你倒是一直往漏洞上引战。
    Jemini
        81
    Jemini  
       2023-03-08 18:30:49 +08:00
    ios + 老年模式,真的太香了。
    这才是一个购物 app 的该有的样子。
    Xzong
        82
    Xzong  
       2023-03-08 18:35:29 +08:00
    可能是没有 rn 、weex 之类的混合框架
    kayv
        83
    kayv  
    OP
       2023-03-08 19:38:11 +08:00
    @leo7723 多多会大量使用 webview 加载 h5 吗
    Jed2020
        84
    Jed2020  
       2023-03-08 19:46:46 +08:00
    我想知道,它哪些模块是 H5 ,哪些是原生,有懂哥分享吗
    MoRanjiang
        85
    MoRanjiang  
       2023-03-08 19:59:10 +08:00
    一购物软件卡了才不应该啊
    ragnaroks
        86
    ragnaroks  
       2023-03-08 20:18:40 +08:00
    @AlexaZhou 我说的第三方是基于 APP 本身而言,不是指不同公司
    Chingim
        87
    Chingim  
       2023-03-08 21:04:08 +08:00
    PDD 的购物流程真的很好
    今天出门发现袜子不够了, 出门开始掏手机, 进电梯前就把袜子买好了, 整个过程不超过 1 分钟
    agagega
        88
    agagega  
       2023-03-08 22:10:53 +08:00 via iPhone
    阿里系独特能力:
    1. 把 App 变卡变大
    2. 把 Web 版变残变没
    Ericality
        89
    Ericality  
       2023-03-09 09:26:49 +08:00
    @monkeyzsf 首先如果已经讨论过了 为何不贴出链接供大家学习呢?
    其次无论是初始的分析帖还是后续的"据信"2 次解释贴均与我无任何利益关系 该贴的分析言之有理 我认为这是一个可能的方向故提出 何为引战?
    其次我们讨论的是为何流畅 手机更新与否或许与漏洞利用强关联 和该 app 流畅是否有联系呢? 您嘴上说着技术优化 您的回答我未看见除 漏洞可以被手机更新修复 以外任何有建设性的观点 试问是谁在引战
    leo7723
        90
    leo7723  
       2023-03-09 09:33:51 +08:00
    @kayv 大部分主要的页面都是原生,但是也有很多都是 H5 。
    比如首页 详情 聊天 个人中心都是原生。
    但是个人中心的优惠券、果园、大转盘这些是 H5 。


    @Jed2020 安卓手机打开开发者选项-显示布局边界后,原生的控件会有粉色线圈起来,界面里面大部分无法被圈起来的地方就是非原生。但是现在安装开发框架很多并不是所有非原生都是 H5 。经常提到了 flutter 也是无法圈起来的。不过多多排除,看了他们的 so 库,跨平台的包没有看到 flutter 相关。
    Jed2020
        91
    Jed2020  
       2023-03-09 09:48:37 +08:00
    @leo7723 有道理,刚看了下,PDD 这边首页,购物流程是 native 的。活动,游戏,砍一刀是 H5 的,分配很清晰,没毛病
    AlexaZhou
        92
    AlexaZhou  
       2023-03-09 10:19:51 +08:00
    @ragnaroks wow ,重新定义第三方
    leegradyllljjjj
        93
    leegradyllljjjj  
       2023-03-09 12:37:07 +08:00 via Android   ❤️ 1
    让我看看又有哪些 3A 大作往 APP 里塞虚幻引擎
    kayv
        94
    kayv  
    OP
       2023-03-09 13:48:28 +08:00
    @leo7723 棒!谢谢解答
    daimiaopeng
        95
    daimiaopeng  
       2023-03-09 15:25:15 +08:00
    都能获取手机内部权限了,优化小意思
    ragnaroks
        96
    ragnaroks  
       2023-03-09 17:54:10 +08:00
    @AlexaZhou
    你是对的,我是错的。

    我刚才重新下载淘宝确认了下。

    淘宝只引用了来自不同公司提供的 [银联 SDK 、facebook SDK 、微博 SDK 、FreeType SDK] 和其它不被视为 SDK 的 lib***.so 。

    支付宝只引用了来自不同公司提供的 [高德地图 SDK 、Mapbox GL Native SDK 、OpenSSL SDK 、libavif SDK 、SQLCipher SDK 、FreeType SDK 、libtnet SDK 、Opus SDK 、Fresco SDK] 和其它不被视为 SDK 的 lib***.so 。

    可见你说的 [支付宝和淘宝这种量级的 APP 里面,不会有任何一个第三方 SDK] 确实是有一定道理的。而我说的 [像支付宝和淘宝这种启动超过 1 秒的都是加载了一堆第三方 SDK] 确实是错到离谱。
    smallthing
        97
    smallthing  
       2023-03-13 12:14:58 +08:00
    @samin 那你觉得 pdd 的业务逻辑,热更新数量难道比支付宝差?相反,是强很多吧?
    samin
        98
    samin  
       2023-03-13 20:00:29 +08:00
    @smallthing em ... 你可能没理解我表达的
    xiqishow
        99
    xiqishow  
       2023-03-14 17:41:17 +08:00
    这个问题现在看起来好搞笑 😂
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2239 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 38ms · UTC 01:36 · PVG 09:36 · LAX 17:36 · JFK 20:36
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.