加入收藏 | 设为首页 | 会员中心 | 我要投稿 52刷机网 (https://www.52shuaji.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 安卓频道 > 安卓导购 > 正文

荣耀500 Pro MOLLY评测:颜值实力双爆表!

发布时间:2026-11-04 12:19:58 所属栏目:安卓导购 来源:DaWei
导读:  亲历现场。那会儿荣耀500 Pro MOLLY评测刚发,我们正在赶那版系统最后的三方应用兼容包,打包脚本卡在sign阶段,等了十八秒,窗外洒水车正路过,水柱砸在楼下银杏叶上哗啦一响,我抬头看了眼——不是看树,是看对

  亲历现场。那会儿荣耀500 Pro MOLLY评测刚发,我们正在赶那版系统最后的三方应用兼容包,打包脚本卡在sign阶段,等了十八秒,窗外洒水车正路过,水柱砸在楼下银杏叶上哗啦一响,我抬头看了眼——不是看树,是看对面楼顶天线架歪没歪,上回它被台风刮斜过,信号标定全飘。


  我原以为只是KeyStore密钥链缓存污染,结果adb logcat里翻到半截SELinux avc denied,路径是/data/user/0/com.hihonor.molly.ugc/cache/xxxx,但那个xxxx不是UUID,是硬编码字符串“优胜劣汰”,我敢打包票,因为我在res/values/strings.xml里搜过三遍,没这个string,只在某张PNG的Exif UserComment字段里见过——那图还是测试妹子前天传的,说“MOLLY拍的样张别删”,她用的是厂内调试机,SystemUI开了CameraOverlayMock,overlay里inject了一段logcat hook,把所有onCaptureCompleted回调里的metadata dump进/sdcard/DCIM/.molly/trace/。这事儿我说不准,毕竟没看过她那台机子的kernel config,但dump目录存在,文件名带时间戳,格式是yyyy-MM-dd-HH-mm-ss-优胜劣汰.png,这串字就贴在文件名末尾,不带空格,也不带点。


  楼下便利店关东煮的味儿飘上来,萝卜块浮在汤上,晃得我眼睛酸。我切回AS,点开Build → Make Project,机械键盘声咔哒咔哒,左shift键已经磨掉漆,按下去要多压两毫米才有反馈。编译窗口跳出来:Error: Resource linking failed —— 你猜怎么着?不是missing drawable,是attr/molly_theme_primary_contrast_ratio 定义在values-night-v31,但values-v31里漏了同名attr,系统在夜间模式下init TypedArray时直接fallback到default值,而default值写成了@null,null转float崩在ColorUtils.blendARGB里。崩溃堆栈第十行有行注释:// FIXME: 这个ratio本来该读config_density,别硬编。注释人署名ZhouY,是我们外包同事老周,他三个月前离职,走之前把Git blame里自己那行全改成了“Unknown”。


  测试妹子蹲窗台边上,拿紫外线笔照MOLLY后盖LOGO,说要验UV涂层厚度,说厂方文档写了“双爆表”指的就是UV+RGB双光谱响应达标率,但文档PDF第十七页有个脚注:“实测中发现部分批次模组在650nm波长处响应偏差超出±12%”。她说完把笔塞我手里,转身去够窗台最右边那台测试机,手肘碰倒三台,MOLLY、Magic6 Lite、Xiaomi Civi4 Pro全滑下去,堆在窗台边沿晒太阳,屏幕朝上,反光刺眼。我伸手扶,没扶住,MOLLY背面贴的防眩膜翘了一角,露出底下金属色,和旁边Magic6 Lite的冷灰根本不是一个色调。我盯着看了七秒,然后低头继续看logcat——结果发现log里有一行是system_server打印的:D/HwPhoneWindowManager: molly_mode_enabled=true, force_landscape=false, ratio_policy=optimal_elimination。optimal_elimination。不是optimal_selection,也不是optimal_fallback。是elimination。删掉的意思。


产品概念图,仅供参考

  “优胜劣汰”这四个字在Android资源系统里根本不能当attr value用,XML parser认作非法字符序列,得转成Unicode entity才不会报错。可他们在build.gradle里加了aaptOptions { cruncherEnabled = false },又把png全部丢进assets/,躲过了aapt2的预编译校验。所以真正炸的地方不在resources,而在SurfaceFlinger合成层——他们重写了DisplayDevice的onFrameAvailable回调,里面new了一个EliminationPolicy对象,policy.execute()里调用了Binder.transact(0x9C),这ID在AIDL里根本没定义,是硬怼的,只在/vendor/lib64/hwcomposer.molly@2.4-impl.so里实现了。我连上adb shell,用readelf -Ws /vendor/lib64/hwcomposer.molly@2.4-impl.so | grep 9C,搜出来一个叫_ZN7MollyHW16EliminateSurfaceEv的符号,C++函数名demangle出来就是MollyHW::EliminateSurface()。这函数里第一句是ioctl(fd, HWCOMPOSER_MOLLY_ELIMINATE, &arg),arg结构体第二个字段叫eliminate_ratio,类型是float,值固定填了0.618,黄金分割比。可系统里实际生效的是第三个字段,叫eliminate_target,类型是uint8_t,值是3。3代表什么?没文档。问厂商对接人老李,他敲着桌子笑:“淘汰策略你们不用管,你们只管‘双爆表’这个文案别乱动就行。”他指甲缝里嵌着蓝荧光粉,像修过屏的老师傅。


  我试过用monkey跑三天压力,没崩;用systrace抓了六百帧,layer list里看不到任何“eliminated”的layer name;甚至拆机拍了主控芯片背面的激光刻字,发现BGA封装底下焊的是海思Hi6980定制版,不是麒麟9010。这事儿我说不准,芯片丝印只能扫一遍,热风枪温度我调高了三度,锡球融了但没掉,没敢再试第二次。


  刚才又收到邮件,说MOLLY评测稿要提前十二小时上线,我们这边适配包必须今晚十点前sign完毕。我点了杯冰美式,纸杯外壁凝的水珠顺着手指往下淌,滴在键盘右下角Enter键上,洇开一小片深色。老周留下的那个FIXME注释还亮着,光标停在那行末尾,我删掉// FIXME,改成// Elimination is policy,没保存。现在它还在那儿,没保存。


  先去把窗台上晒烫的三台测试机挪进遮光盒——MOLLY背面翘起的防眩膜得压平,不然明天拍照反光会误触发自动hdr切换,切到HDR模式后,那套EliminationPolicy就会强制把预览帧降采样到320x240做边缘识别,再把识别失败的帧直接discard。我不打算修这个,明早八点前交包,剩下四十三分钟,够我重签两次。

(编辑:52刷机网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章