三星Galaxy Z TriFold三屏折叠深度评测:未来已来
|
亲历现场。那个大版本封版前四十八小时,我盯着Z TriFold的三屏协同弹窗卡在中间那块屏上不动——不是闪退,不是黑屏,是弹窗阴影层还活着,但按钮全灰,触控无响应,像被钉在OS的尸检台上。我原以为是SurfaceFlinger渲染线程锁死,结果抓Log发现是Launcher进程在跨屏窗口分发时偷偷new了个匿名Handler,而那个Handler绑的Looper居然在折叠状态切换瞬间被ActivityThread回收了两次。这个我敢打包票,我连dumpsys SurfaceFlinger --list都截了三屏,第三屏左下角还带个没擦掉的指纹印。
外观展示图,仅供参考 桌上三杯没喝的咖啡,绿的那杯奶泡塌成一坨灰褐色,黄的那杯漂着油花,最右边白瓷杯沿裂了条细缝,渗出茶渍似的咖啡碱结晶。组长蹲在测试台旁边用万用表测铰链转轴附近的EMI噪声,镊子夹着探针抖得比灯管还厉害——测试间顶上那根LED灯管从凌晨三点开始闪,每闪一次,频谱仪上就跳一次尖峰,刚好叠在Wi-Fi 6E的信道71上。我喊他挪下位置,他头也不抬说“你先看下BT配对断连是不是和这有关”,我说“配对?那玩意儿昨天就跪了,现在连扫都扫不出设备”,他说“哦,那个啊,开发说改在下一版”。我点点头,把日志文件名从zfold3_tri_bug_0924改成了zfold3_tri_bug_0924_DO_NOT_MERGE,然后点右键删了。工位隔板上贴的便利贴写着“查Kernel里binder_node refcnt异常递减”,底下画了个箭头指向“注意check binder_proc->files未加rcu_read_lock”,字迹是产品经理写的,蓝墨水,末尾滴了颗墨点,像颗小痣。她今天穿了双新跑鞋,进门就踩着防静电地板咔嗒咔嗒走过来,站定后先摸口袋掏U盘,又转身问开发:“那个多屏任务栏滑动惯性衰减曲线,你调的是log还是exp?”开发正在啃包子,含糊回了句“e的负x次方……大概”,她立刻说“不对,要负x平方”,开发咽下最后一口,舔了舔拇指上的芝麻,说“那我重编”。我看着他打开终端敲make clean,手肘压在我刚校准完的温箱控制面板上,屏幕数值跳了一下:25.8℃→26.1℃→25.3℃,再没回来。 所以你们真觉得“未来已来”?扯淡。它连三块屏之间切后台都还在靠kill -9硬拔,SurfaceFlinger一打嗝,副屏直接返祖回Framebuffer模式,分辨率钉死在1080p——我试过,插着Type-C扩展坞接显示器,它能同时输出三路信号,可只要合上左边屏,中间那块就丢帧,丢得毫无规律,有时连丢十八秒,有时只丢半帧,Log里干干净净,就像从来没发生过。但偏偏在这种时候,那个预装的三星笔记App能自动把主屏笔迹同步到副屏——就那么巧,每次同步完,右屏状态栏通知图标集体消失三秒,回来时图标顺序全乱。我截图发给开发,他回:“哦,UI刷新冲突,小问题。”我反手把截图转发给产品经理,她三分钟没回,十分钟后说:“用户感知不强,延后。” 凌晨打车回家的司机在听评书,讲薛仁贵征东,车载音响滋啦滋啦响,每到“忽见天边一道金光”就卡顿,他伸手拍了下主机壳,金光续上了。我盯着窗外广告牌流光,脑子里还在过那个binder refcnt的case:kernel log里明明写了“node refcnt drop from 3 to 2”,可dump出来对象地址根本不在当前进程map里。我翻了三遍drivers/base/binder/proc.c,最后发现是CONFIG_BINDER_DEBUG的开关在那个大版本里被关了,而debugfs下的binder_stats路径压根没挂载——没人告诉我要自己mount。这事我说不准,不确定是故意的,还是漏了Makefile里的KCONFIG依赖。 我原以为是驱动层的折叠检测精度不够,结果复现出来是在Framework层做了一次冗余的DisplayContent重建,触发条件特别邪门:必须在AOD亮起瞬间、同时有微信后台推送抵达、且蓝牙耳机连接中,才概率触发。我们搭了七套自动化环境,六套都压不出来,第七套用的旧版PowerManagerService jar包,一跑就崩。开发说“老jar肯定有兼容问题”,我问他要不要回滚,他说“不能动,下游功能都按这个接口联调完了”。我就默默把那套环境编号从T7改成T7_legacy,贴在机柜侧板上,下面补了行小字:“此机仅用于证伪”。 便利店关门前五分钟买的饭团,海苔外包装皱得像张哭过的脸。我撕开咬一口,里面辣萝卜干碎了满手,指尖沾着米粒,掏出手机想录个屏复现Bug,发现前置摄像头自拍模式下三屏显示错位——主屏画面偏右三十像素,左屏空出条白边,右屏多挤进半张嘴。我对着镜头咧嘴笑,牙龈露得比Bug还真实。这个不用提报,我知道闭环路径:产品经理会说“自拍不是主力场景”,开发会说“OpenGL ES shader矩阵计算有舍入误差”,测试主管最后会在评审会上敲桌说“边界case优先级P3”。 优胜劣汰?是,它优胜了所有现有方案的烂设计,然后自己长出更烂的新瘤子。比如那个号称“自适应多任务”的分屏逻辑,实际就是硬写死三组window manager规则:展开态走A,半折态走B,合盖态走C。结果我们测到一种叫“虚折”的状态——铰链物理角度停在78度,系统却判定为82度,它就强行把右屏应用拖进左屏容器,界面缩成 postage stamp 大小,还带倒影特效。这种事没法自动化,得人眼盯。盯了两天,我眼眶发青,镜片起雾,眼镜腿弯了没发现,直到它掉进咖啡杯里泡了半分钟。 算了,不说了。我待会儿去把那个Binder refcnt的case再过一遍,试试把debugfs手动挂上。要是还不行……我就去问问隔壁组借个逻辑分析仪,把I2C总线上折叠传感器的原始波形采下来。反正离封版还有三十六小时,够我把所有不可能都撞一遍。 (编辑:171手机网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |

