Android×AI 技术刊#第11期——都是Android技术文 鸿洋 在小说阅读器读本章 去阅读 在小说阅读器中沉浸阅读 本周 Android 技术动态聚焦三大核心方向:跨端框架突破:腾讯视频开源 ovCompose 框架,实现 Android/iOS/鸿蒙三端一码开发,基于 Compose Multiplatform 深度优化性能与原生混排能力;货拉拉开源 TheRouter 鸿蒙路由,支持跨模块解耦与动态路由表下发。性能优化实践:手机系统 D-Vsync 渲染管线优化方案发布,实测掉帧率降低 72.7%,功耗仅微增 0.13%;Flutter 复现 iOS 26 “液态玻璃”效果,解析着色器与扭曲算法实现难点。底层机制深潜:Android Runtime ART 加载验证流程、链接准备阶段及类初始化锁机制三连解析;SO 脱壳全流程指南:Frida Dump 内存捕获 + SoFixer 修复实战详解。Android重磅!鸿蒙平台首个全跨端APP ——腾讯视频ovCompose框架发布 | 腾讯技术工程:官方也发文介绍了,腾讯视频推出ovCompose框架,基于Compose Multiplatform,支持Android、iOS和鸿蒙三端一码开发,解决Compose不支持鸿蒙及iOS混排受限问题。特性包括高性能优化(如GC抑制、内存管理)、三端一致性渲染、原生UI混排支持,以及KuiklyBase组件生态(如堆栈还原、资源管理)。已在腾讯视频等10+款APP落地,显著提升开发效率。开源地址:https://github.com/Tencent-TDSFlutter 小技巧之:实现 iOS 26 的 “液态玻璃” | GSYTech:本文介绍了在Flutter中复现iOS 26“液态玻璃”效果的方法。不同于简单模糊,该效果通过自定义着色器实现核心LiquidGlass函数,涉及采样周围像素进行模糊处理,并扭曲背景坐标模拟液态扭曲感。作者详细解释了代码逻辑,如调整缩放或水滴扭曲以接近iOS锁屏效果,并讨论了性能挑战和与官方实现的差距。最后提供Demo链接供参考。iOS 26 beta1 重新禁止 JIT 执行,Flutter 下的 iOS 真机 hot load 暂时无法使用 | GSYTech:iOS 26 beta1 重新禁止 JIT 执行,导致 Flutter 在 iOS 真机上的 hot load 功能失效。原因在于系统加强内存权限限制,禁止未经代码签名的二进制文件通过 JIT 编译直接执行,影响了 mprotect 的使用,而 mprotect 是 hot load 的关键机制。此问题仅影响真机调试,模拟器不受影响。Flutter 团队需开发解释器支持 Dart 代码执行,避免内存权限修改,修复方向包括解释代码支持、dart:ffi 集成、性能优化及混合模式执行(如 shorebird 的热更新方案)。类似问题也影响其他工具如 StikJIT。手机系统的D-Vsync渲染显示管线优化 | haha视界:本文提出D-Vsync技术解决手机渲染掉帧问题。传统VSync架构因渲染与显示强耦合,导致5%的重负载帧无法在固定刷新周期内完成而卡顿。D-Vsync通过解耦渲染与显示,利用短帧节省的时间窗口提前执行长帧渲染。关键技术包括:1)输入预测层(IPL)通过曲线拟合校正输入事件;2)帧预执行模块累积空闲时间;3)显示时间虚拟器(DTV)维持动画节奏。该方案覆盖85%动画和10%交互场景,在鸿蒙/安卓实测中实现掉帧减少72.7%、卡顿降低72.3%、渲染延迟下降31.1%,功耗仅微增0.13-0.37%,内存消耗增加约10MB。为什么跨平台框架可以适配鸿蒙,它们的技术原理是什么? | GSYTech:鸿蒙Next提供POSIX兼容、Clang/LLVM、GN/Ninja等基础工具,使跨平台框架能适配。Flutter通过修改嵌入层,使用GN/Ninja构建引擎,适配LLVM/Clang,支持skia和Impeller渲染。React Native将JS控件映射到ArkUI C API,利用NAPI实现原生交互。uni-app x编译Vue代码为ArkTS,类似翻译角色。KMP/CMP通过Kotlin/JS或Kotlin/Native适配,需定制LLVM和NAPI绑定,工作量较大;ovCompose使用Skia自绘。整体适配成本从低到高:uni-app x < React Native < Flutter < KMP/CMP。Android Runtime加载(Loading)阶段验证流程 | Android小码蜂:本文详细阐述了Android Runtime(ART)加载阶段验证的重要性、流程和机制。验证阶段确保系统稳定性、安全性和兼容性,通过检查字节码格式、类文件结构、访问权限和符号引用等核心内容。文章介绍了类加载器体系(如BootClassLoader、PathClassLoader、DexClassLoader)及其各自的验证流程,包括路径确认、文件完整性检查、权限验证和依赖检查。此外,讨论了验证的数据结构与算法、与其他阶段的交互、性能优化策略(如缓存、并行验证)和安全增强措施(如防篡改、沙箱隔离),以提升效率和防护能力。https://juejin.cn/post/7512699604631470130Android Runtime链接(Linking)阶段准备工作 | Android小码蜂:本文详细介绍了Android Runtime链接阶段中的准备工作,核心目标包括规划类的内存布局、为静态变量设置默认初始值(如0、false、null),以及初始化类型信息(如元数据、方法表和字段表)。准备工作位于验证之后、解析之前,确保类的静态部分可用,为后续阶段奠定基础。它还涉及符号引用的前期分类和引用关系建立、线程安全保障(如锁机制和状态管理)、错误处理(如异常捕获和资源回滚)。在优化方面,与预编译技术(如AOT)协同,通过缓存、延迟初始化和并行处理提升性能。文章还讨论了从Dalvik到ART的演进,其中AOT预编译显著减少了运行时开销,以及各Android版本的改进(如Lollipop引入ART、Nougat优化预编译),并展望未来趋势如智能预编译和动态加载支持。https://juejin.cn/post/7512765762191015970Android Runtime初始化锁机制 | Android小码蜂:该文系统阐述Android Runtime类初始化锁机制的核心价值与实现原理。锁机制通过类级别锁保障线程安全,避免多线程并发初始化导致的静态变量重复赋值与状态不一致问题,同时减少重复初始化开销。其实现依赖ClassLoader的synchronized同步块控制初始化流程,结合偏向锁、轻量级锁优化及递归锁支持处理重入场景。在类层次结构中严格遵循父类优先初始化原则,并通过状态标志解决循环依赖问题。锁机制与JVM内存模型协同,通过内存屏障确保静态变量修改的可见性、原子性和有序性,维护多核缓存一致性。性能优化策略包括分段锁减少竞争、锁粗化合并操作及锁消除技术,有效提升系统并发效率。https://juejin.cn/post/7512765762191048738货拉拉开源:鸿蒙路由 TheRouter | 货拉拉技术:TheRouter 是一个开源路由框架,专为移动端APP设计,支持Android、iOS和鸿蒙系统。核心功能包括Navigator(页面导航跳转,支持多路径映射和动态路由表)、ServiceProvider(跨模块依赖注入)和ActionManager(动态化回调能力)。框架旨在解决模块化开发中的依赖解耦问题,支持路由表动态下发、拦截器定制、迁移工具及与其他路由框架的对比。文章详细介绍了其使用场景、跳转方法、动态路由设计和跨模块调用,强调其高一致性和灵活性。https://juejin.cn/post/7513962242434695208https://github.com/HuolalaTech/hll-wp-therouter-harmony/一文搞懂 SO 脱壳全流程:识别加壳、Frida Dump、原理深入解析 | CYRUS_STUDIO:本文详细介绍了 Android SO 文件脱壳的全过程。首先通过 IDA 打开 SO 文件时出现的 ELF 结构识别错误、红色代码块等异常现象,判断文件可能被加壳或混淆。核心脱壳工具是 Frida-Dump,通过 Frida 注入目标进程,利用 dump_so.js 脚本定位内存中目标 SO 的基地址和大小,读取内存数据并保存为 .dump.so 文件。由于 dump 得到的是内存执行视图(段结构),需使用 SoFixer 工具修复为链接视图(节结构),重建 ELF 文件头、节表等信息,生成可被 IDA 正常解析的 _fix.so 文件。文章深入解析了 Frida 通过遍历 Android linker 维护的 solist 链表(存储 soinfo 结构,包含模块名、基址、大小等)定位内存 SO 的原理,并提供了完整的命令行操作示例和脚本函数说明(如 findmodule, dumpmodule)。https://juejin.cn/post/7514242912374390784这TextView也太闪了,咋做的? | fastcv:文章分享了Android中实现文字闪烁效果的探索过程。作者在开发Demo时,为填充首页尝试添加闪烁TextView。先手动实现:继承AppCompatTextView,通过移动矩形区域模拟光效,但设置背景后效果差;后优化用GradientDrawable渐变。接着使用AI生成代码,利用LinearGradient着色器和Matrix矩阵动态改变光效位置,实现更流畅闪烁,并解释Shader和Matrix原理。最后指出AI代码的局限(如文本颜色无效),建议扩展自定义属性优化。全文展示问题解决思路与技术细节,强调实践与反思。https://juejin.cn/post/7514244463225700361AIAI Agent(智能体)技术白皮书 :本文翻译自 2024 年 Google 团队的一份 Agents 白皮书,系统阐述AI Agent的核心概念与架构。Agent定义为扩展大模型能力的应用程序,其核心在于工具使用(区别于基础模型),由模型(决策核心)、工具(连接外部系统)和编排层(推理循环)三大组件构成。工具分为三类:Extensions(标准化API连接)、Functions(客户端执行代码)和Data Stores(访问实时数据),分别解决API调用、结构化输出及动态知识更新需求。通过类比厨师"规划-执行-调整"循环,解释Agent的ReAct、CoT等推理框架工作原理。性能优化可通过上下文学习(如ReAct提示)、检索增强(RAG)和微调实现。最后以LangChain构建航班查询Agent为例,展示工具协同逻辑,并指出Agent通过自主规划与工具扩展,突破模型静态知识限制,为复杂任务提供现实世界解决方案。未来需持续迭代探索"Agent链"等方向。https://arthurchiao.art/blog/ai-agent-white-paper-zh/本期结束,下期再见。扫一扫&nbsp;关注我的公众号如果你想要跟大家分享你的文章,欢迎投稿~┏(^0^)┛每周见! 预览时标签不可点 微信扫一扫关注该公众号 继续滑动看下一个 轻触阅读原文 鸿洋 向上滑动看下一个 知道了 微信扫一扫使用小程序 取消 允许 取消 允许 取消 允许 × 分析 微信扫一扫可打开此内容,使用完整服务 : , , , , , , , , , , , , 。 视频 小程序 赞 ,轻点两下取消赞 在看 ,轻点两下取消在看 分享 留言 收藏 听过
研究与学习
4.0 · 优秀
Android×AI 技术刊#第11期——都是Android技术文
Android×AI 技术刊#第11期——都是Android技术文 本周 Android 技术动态聚焦三大核心方向: 跨端框架突破 : 腾讯视频开源 ovCompose 框架 ,实现 Android/iOS/鸿蒙三端一码 开发,基于 Compose Multiplatform 深度优化性能与原生混排能力; 货拉拉开源 TheRouter 鸿蒙路由 ,支持跨模块解耦与动态路由表下发。 性能优化实践 : 手机系统 D-Vsync 渲染管线优化方案 发布,实测掉帧率降低 72.7% ,功耗仅微增 0.13%; Flutter 复现 iOS 26 "液态玻璃"效果 ,解析着色器与扭曲算法实现难点。