三星Galaxy Z Flip7 FE:颜值与实力双升级
|
亲历现场。那晚九点四十七,测试机堆在窗台晒到发烫,玻璃反光糊住半块屏幕,我伸手去拨——指尖刚碰到边框,Z Flip7 FE自己弹出个通知:“折叠状态异常,已降级为单屏模式”。我盯着那行字看了十八秒,没动。楼下便利店的关东煮在咕嘟,热气顶得卷帘门吱呀响。 厂商对接人老周第三次催编译包,语音里嚼着口香糖,“兄弟,这版系统我们明早十点必须烧进产线”,我说“等我确认下折叠态监听回调”,他嗯了声挂了。我原以为只是onFoldStateChange漏了个case,结果抓log发现SensorService根本没把霍尔信号塞进来——不是我们的锅,是那版系统里SensorHub固件把翻盖事件压到了300ms之后才吐,而我们的ActivityLifecycleObserver早八百年前就超时return了。这个我敢打包票,翻了三遍HAL层dump,连SensorService的Binder transaction timeout阈值都调低了再试,还是丢帧。 桌上的机械键盘声停了。小陈蹲在工位隔断底下接线,手里拽着五根不同颜色的Type-C线,其中两根是三星原装、一根带红标、一根印着“Made in Vietnam”、最后一根……他剪开绝缘皮看了眼铜芯直径,说“这根绕过USB PD协议直接供5V,测温升用的”,我点头,他扭头又钻回去了。窗外洒水车经过,水柱扫过玻璃,哗啦一下,Z Flip7 FE的屏幕突然闪绿边——不是OLED烧屏,是DisplayManagerService里有个force color mode的debug开关没关,测试妹子上午提的bug单里写了,但我当时正对着AOSP 14.2里一个死锁打补丁,顺手把它当feature patch合并进去了。
产品概念图,仅供参考 所以什么叫“优胜劣汰”?就是你拿三年前写的折叠检测逻辑跑Z Flip7 FE,它不报错,它假装正常——直到你横着拍三下手机,触发那个藏在PowerManager里的隐藏触控路径,才吐出一行log:“skip folding animation due to surface rotation conflict”。这个我说不准是不是三星故意留的后门,但我知道去年给某厂改折叠动画,他们QA妹子硬是录了两百一十三段竖屏开合视频,只因为第三十七段里摄像头模组有0.3度的偏移感——而这次,测试妹子林薇甩过来的复现步骤只有七个字:“晃两下,开微信,点相册”。她没截图,没录屏,就微信对话框里打了这几个字,加个句号。我删掉整个AnimationControllerImpl重写了六百二十一行,用SurfaceControl.Transaction链式调用强行插帧,编译等了三分四十二秒。期间洒水车又来了,这次停在楼下,水枪对着墙根滋了足足二十秒。我盯着build日志里那行“[dexing] completed”发愣,忽然想起上周和外包同事老吴吃盒饭,他扒拉着米饭说“现在连折叠态都分三级:物理折叠、逻辑折叠、心理折叠”,我呛得咳出半粒米,他接着说“心理折叠你懂吧?用户觉得它该合上,它就不合——但系统认为它没折,所以所有sensor callback全堵在MessageQueue里,像春运车站检票口塞了三百七十二个没取票的人”。我没接话,低头撕开醋包,倒太急,漏了三滴在裤缝上。 最后那个坑是DisplayAdapter的缓存策略——它会根据上次onResume时的mCurrentRotation缓存SurfaceView的宽高比,可Z Flip7 FE在铰链半折93度时触发了一次非法rotation变更,mCurrentRotation变成-1,缓存失效后重建Surface,但SurfaceFlinger没等它ready就commit了BufferQueue,结果相册缩略图全糊成紫色条纹。修复?加一行if (rotation == -1) return; 然后重新dispatch。就这么简单。可为什么没人告诉我这-1是三星硬塞进去的magic number?问老周,他说“他们不公开文档,只给SDK jar,里面全是abstract method”。 现在整套逻辑跑通了,onFoldStateChange终于稳定回调,但我在代码里留了三处TODO,其中一个写的是:“等三星发正式API说明再删”。另一个写的是:“如果下个月还用这套临时hack,请替我报警”。第三个空着,光标停在那里,删不掉。窗外天快亮了,洒水车没再来,但隔壁办公室有人开始敲键盘,嗒、嗒、嗒,节奏很慢,像在数心跳。我把Z Flip7 FE翻过来扣在桌上,听它铰链缝隙里渗出一点微弱的电流声——不是故障,是那版系统里新加的haptic feedback for fold detection,关不掉,也不告诉你它在哪调用。 先扔结论后补细节。这机子确实“颜值与实力双升级”,但“优胜劣汰”的不是技术,是人——谁撑不住连夜编译,谁忘了关debug色域开关,谁在review里漏掉了SensorHub版本兼容性注释。我现在要去买关东煮,得赶在便利店换班前。林薇说她七点来测,带了新买的红外测温枪,说要量量我们这屋的CPU结温有没有超过42℃。我信她真会测,但她肯定不会告诉我,她测温枪电池仓里贴着张小纸条,上面写:“今天别让陈工改LayoutParams,他昨儿拆了五次XML”。 (编辑:52刷机网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |

