vivo Y300 Pro+:超长续航+顶级影像,全能旗舰新标杆
|
亲历现场。那版系统推出来第三天,我正对着 Y300 Pro+ 跑电量埋点,vivo 对接人老陈电话就打进来了:“兄弟,文案定稿了,你赶紧看看‘超长续航+顶级影像,全能旗舰新标杆’这句能不能撑住。”我一边点开 Settings > Battery > Usage Detail,一边回他:“能撑住个锤子——省电模式切后台动画卡帧,你让我怎么标‘超长’?”他那边停了半秒,说“那句我们内部过三轮了”,挂得比编译结束还利索。 桌上的机械键盘声是青轴,空格键弹簧有点涩,按下去要多使三分力。我重刷 firmware 包的时候,手指在键帽上磨出油光,F2 键上那个小凹痕已经发亮。编译窗口卡在 “Running dex compilation” 的时候,窗外洒水车又来了,水柱扫过对面写字楼玻璃幕墙,反光在屏幕上跳了十七下,每一下都正好打在 gradle 进度条尾巴上。我原以为是 IDE 渲染 bug,结果关掉 Android Studio 再开,它还在那儿跳——原来是洒水车司机习惯性压着喇叭拐弯,震动传导进楼体,震松了我显示器 HDMI 接口的屏蔽簧片。 测试机堆在窗台,五台 Y300 Pro+,全贴着玻璃晒。最右边那台黑屏了半小时,我拿温度枪一测,后盖 48.3℃,但 logcat 里没 thermal-throttling,只有 CameraService 重启四次、每次间隔二十三秒——查了才知道是 ISP 模块在高温下丢了一帧 timestamp,触发了 vendor 层自保逻辑,直接杀 camera daemon,不走 framework 日志通道。这个我敢打包票:不是 kernel 问题,是高通那边给的 .so 里写死了 47℃ 上限,没留 hook。但我说不准他们为啥非要卡死在 47,而不是 47.5 或者 46.8,问高通FA,回复是“建议参考热设计白皮书第 3.1.2 节”。扯淡。
产品概念图,仅供参考 楼下便利店关东煮今天卖完萝卜了,只剩魔芋结和竹轮,汤底泛着一层薄油光,映着LED灯管,绿得像 adb logcat 里的 warn 级日志。测试妹子小林蹲在工位旁用三台设备跑连续拍照功耗,手边纸杯里关东煮汤快凉透,她用筷子头戳着浮在汤面的海带结,说:“张哥,拍到第八百三十二张时,HDR+ 处理延迟突增两秒半,但 profile 工具抓不到热点。”我凑过去看,trace 文件里全是 Binder call 堆栈,顶层线程叫 CameraBackgroundExecutor-2——可这玩意儿根本不该出现在 trace 里,它是 vendor service 的内部线程名,framework 层根本不该感知。我们俩盯着那串名字看了四十秒,没人说话,空调外机忽然“哐”一声,吓她一哆嗦,筷子掉进汤里。优胜劣汰。这四个字真不是我编的。昨天改完省电策略的 patch,push 到 staging 后,发现 Z30 Pro 的同款电池算法居然在 Y300 Pro+ 上直接跳过 load factor 校准,原因查到最后是 init.rc 里一句 obsolete 的 property:ro.boot.hardware = y300pro(注意末尾没加+)。Z30 Pro 的 boot image 老早删了这行,但 vivo 这批新机偏偏留着,且只在 /proc/cmdline 里塞了个假值,bootstat 又没校验合法性,于是 battery HAL 初始化时,读到这行就默认走旧路径——绕过所有新版电流采样补偿逻辑。而旧路径的补偿参数表,最后一行写着“y300pro: v2.1.4”,但实际烧录的是 v2.3.0 固件。这就是优胜劣汰:旧逻辑死不掉,新逻辑活不全,活下来的那段代码,谁也没想清楚它到底靠什么活着。 外包同事阿哲昨天把 OTA 升级流程的弹窗图标换了三次,就因为“旗舰感不足”。第一次用 Material Design 风格的云朵,被厂商说“不够 vivo”;第二次换成水墨晕染效果,又被说“和影像页冲突”;第三次他自己画了个像素风闪电,导出成九宫格图,结果发现系统资源加载器在 32 位进程里会错把 .9.png 的 ninepatch chunk 当作普通 png header 解析,导致 icon 加载失败时 fallback 到默认安卓机器人——还是蓝的,不是 vivo 那种偏青的蓝。他就站我工位边,拿记号笔在打印出来的 build.gradle 上圈“android { compileSdk 34 }”,圈了三遍,墨水渗进纸背,把下面一行 ndk { abiFilters 'arm64-v8a' } 直接洇没了。 我其实不太信“全能旗舰”这说法。去年 OPPO 找我们调 Find X7 的影像链路,结果调到一半发现 ColorOS 自己在 HDR 场景里把 Exynos 的 VPU 频率锁死在 422MHz,美其名曰“功耗平衡”,实则是某段内联汇编里把 divq 指令写反了符号位,算出来永远负数,最后被 clamp 成最小值。这事谁捅的?测试妹子小林——她拍完一百张夜景后,顺手 dump 了所有 CPUFreq governor log,发现里面混着一段明显不属于当前 kernel 版本的频率切换日志,格式都不一样。我翻了三天 vendor blobs,才找到那处汇编。现在看见“顶级影像”四个字,手指就自动想去摸 adb shell cat /sys/devices/system/cpu/cpu/cpufreq/scaling_cur_freq。 算了,先烧个 userdebug 包上去。要是明天早上八点前还卡在 CameraService 启动失败,我就把 IPC binder timeout 改成三百七十二毫秒——上次改成三百七十,高通 debug build 报了 warning;改成三百七十五,vivo 那边 CI 直接 fail;三百七十二是唯一一次三边都沉默的数字。不知道为啥,就是三百七十二。 (编辑:52刷机网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |

