荣耀WIN RT全面解析:精准匹配你的用机需求!
|
亲历现场。那版系统交付前四十八小时,我在荣耀B座三楼测试间对着十台叠在一起的样机盯帧率曲线,右下角弹窗飘着“荣耀WIN RT全面解析:精准匹配你的用机需求!”——就这句,我盯着看了十七分钟,键盘敲空格键停了三次,第三次按下去时听见楼下便利店关东煮炉子噗一声换气,汤水溅在不锈钢槽里像打了个小嗝。 我原以为是文案组塞进系统UI的推广页,结果查资源ID发现它硬编译进了SystemUI.apk的启动Activity栈底,连onPause都懒得重写,一锁屏再亮屏它又从头load一遍WebView。外包同事老张蹲在窗台边啃冷掉的肉包,左手捏着烧录失败的OTG线,右手还在往logcat里grep“RT”的关键词;他抬头问我:“你见过哪个厂商把‘精准匹配’写进Activity名称里的?”我没答,因为刚发现那个Activity里调了七次PackageManager.getPackageInfo(),只为了取一个根本没用的meta-data标签——标签名就叫“win_rt_optimize”,值是“true”。 测试妹子小林把第六台机子的屏幕擦出毛边,她拿指甲掐着边缘反复刮,说“发热阈值测不准,温控策略好像被绕过去了”。我说你试试把“荣耀WIN RT全面解析”页面切到后台再切回来,她照做,第三台机黑屏十秒后重启——但不是Kernel Panic,是SystemUI自己杀了自己的进程再拉起,log里就一句:“FATAL EXCEPTION: main / java.lang.NullPointerException: Attempt to invoke virtual method 'void android.view.View.setVisibility(int)' on a null object reference”,而那个View的ID叫win_rt_match_view_group_root。这个我敢打包票,我扒过三遍堆栈,就是那个WebView.onDetachedFromWindow()里漏判了mRootView是否为null。 窗外洒水车又来了,水柱斜劈在玻璃上,把墙上贴着的“交付节点倒计时海报”洇出一道灰痕。海报底下压着我的机械键盘,青轴,敲击声像一粒粒绿豆蹦进铁皮罐子。我数过,从按Ctrl+B开始编译,到AS弹出“BUILD SUCCESSFUL”,中间隔着三十七秒零八百毫秒——洒水车刚好经过两次,第二次比第一次慢五秒,水压弱了。可这跟“优胜劣汰”有半毛钱关系?没有。可他们就在发布会上说“WIN RT底层重构实现自然淘汰机制”,淘汰什么?淘汰我们连夜删掉的三百七十二个无用Provider?还是淘汰小林手边那台连续第七次亮屏白屏的工程机?
产品概念图,仅供参考 我不屑。真不屑。上周二下午两点十七分,厂商对接人老周坐我对面喝速溶咖啡,褐色粉末在杯底沉成小山,他指着平板上那句“精准匹配你的用机需求”说:“用户不需要知道怎么匹配,只要感觉准。”我说那你们把MatchStrategyImpl.java里那个if (isNightMode()) return false;改成return true;行不行?他笑,说“这是产品逻辑,不是技术问题”。我点头,顺手把他咖啡杯挪开半寸——底下压着我的工牌,反面用红笔圈了两行字:“1. 高频唤醒Service未加前台约束 2. win_rt_match_service 依赖了未exported的internal API”。这事儿我说不准,因为第二天那行代码就被合并进主干了,Merge Commit Message写的是“Fix stability issues”,没人提“internal API”。 桌上的机械键盘声突然变闷——我抬手按住空格键没松。隔壁测试组在吼:“谁动了ADB调试开关?!现在所有机子都在上报fake_gsensor_data!”没人应。我松开手,键盘啪地弹回原位。小林已经去楼下便利店买新毛巾了,说旧的擦屏擦糊了。她走时顺手把窗台那堆测试机往里推了推,最上面那台背面朝外,电池盖缝隙里卡着半片风干的萝卜条——不知道哪天蹭上去的,现在晒得发白、卷边,像一小截失效的热敏胶带。 所以“优胜劣汰”到底指什么?指那个Activity被杀十一次后终于放弃重试?指老张最后改了gradle脚本,在assembleDebug之前先执行sed -i 's/win_rt_match/xxx_placeholder/g'?指我们把那句文案埋进strings.xml的注释区,等OTA推送完再悄悄解开?我不知道。但我看见老周今天早上九点零三分发来的钉钉消息,只有五个字:“页面保留,不动。”后面跟了个笑脸。我回了个OK,没加句号。 我现在要去拆第三台机子后盖,看看那个win_rt_match_service是不是真如log所示,在init()里偷偷启了两个HandlerThread——其中一个没quit。如果没quit,我就得在system_server启动完之前把它的Looper.purgeMessages()钩住。这事我下午三点前得干完,因为四点要交签核单。至于那句“精准匹配你的用机需求”,随它去吧。反正下周三版本冻结,它还会在SystemUI里活着,只要不碰亮屏逻辑,它就能活到下一个大版本。活法不同罢了。 (编辑:52刷机网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |

