找回密码
 注册

微信登录

微信扫一扫,快速登录

查看: 408|回复: 0

Android*鸿蒙*AI 技术刊#第13期——APK极速瘦身策略、MVI架构实践与AI工具链新动态

[复制链接]
发表于 2025-6-30 03:00 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册 微信登录

×
作者:微信文章
本周 Android 生态聚焦性能优化、架构演进与 AI 融合三大方向:

1️⃣ 性能深度优化
    APK 瘦身实战:Unreal 项目压缩 NativeLibs 与资源,实现 1.23G → 130M 体积优化;鸿蒙组件冻结技术:freezeWhenInactive 属性抑制非活跃 UI 刷新,降低主线程负载。


2️⃣ 开发范式革新
    MVI 架构解析:厘清单向数据流与状态管理核心,对比 Redux/MVVM 适用场景;Flutter Hotload突破:双重映射技术绕过 iOS 26 权限限制,恢复真机 Hotload 能力。


3️⃣ AI 工具链进展
    Google AI 开发栈:Gemini 模型生态 + Keras/JAX 框架 + 边缘计算方案全景解读;美团视频生成开源:MultiTalk 支持单图生成多人互动视频,L-RoPE 技术解决角色错位。


4️⃣ 开发工具更新
    Android Studio Narwhal:K2 编译加速、Gemini 图像生成、XR 模拟器支持;终端 AI 助手:Gemini CLI 开源,终端内代码生成与任务自动化。

Android

极致优化Android平台APK的大小 | lipeng:本文针对Unreal Engine游戏项目,详细介绍了Android平台APK大小优化策略。核心优化点包括:1)压缩NativeLibs,通过控制extractNativeLibs设置减少安装包体积;2)代码体积优化,通过禁用不必要模块、控制inline、关闭异常处理、启用LTO和剔除导出符号,显著减小libUE4.so大小(从258M降至132M);3)重定位表压缩(如RELR),针对不同SDK版本优化so内存占用;4)资源裁剪,剔除第三方组件冗余文件(如GVoice模型)并优化游戏资源打包策略。综合优化后,APK大小从1.23G降至130M,运行时内存减少数十MB,提升分发效率。

开源项目Trail Sense:是一款完全离线的Android应用,利用手机传感器辅助野外徒步与生存活动。

核心功能包括:通过GPS放置信标导航、路径追踪、照片地图定位、背包清单规划、日落预警及气压预测天气。2025年开发重点为照片地图优化、生存指南完善及新增手机信号查找功能。应用严格遵循离线原则,所有数据(位置、气压历史等)仅存储于本地设备,清除应用即删除数据。关键权限说明:位置权限用于导航/天文计算,后台定位确保日落提醒准确,相机权限支持取景器与地图功能。基于MIT协议开源,支持社区二次开发。

w1.jpg

w2.jpg

w3.jpg

https://github.com/kylecorry31/Trail-Sense

Android Studio Narwhal | 2025.1.1 发布,快来看看有什么更新吧 | GSYTech:Android Studio Narwhal 2025.1.1版本发布,主要更新包括K2 Mode提升Kotlin编译速度和分析性能,Terminal架构重构优化兼容性,Gemini AI增强支持图像附件、文件上传和Compose预览生成,Feature Drop引入Test Journey测试流程和Agent模式多阶段开发,新增云备份IDE设置、XR Emulator支持XR应用开发,Compose预览改进导航和动态大小调整,Layout Inspector优化重组计数显示,新设置如禁用自动同步,Play Policy政策检查,以及Android Device Streaming设备串流和备份功能。

Flutter 又双叒叕可以在 iOS 26 的真机上 hotload 运行了,来看看又是什么黑科技 | GSYTech:iOS 26 beta1 禁止了 mprotect 的 RX 权限,导致 Flutter Debug 模式无法 hotload 代码。Flutter 团队开发了临时解决方案:使用双重映射技术,申请一个 RW 地址用于写入代码和一个 RX 地址用于执行。通过 NOTIFY_DEBUGGER_ABOUT_RX_PAGES 函数触发 LLDB 调试器修改内存权限,实现 hotload。该方案增加约 500ms 延迟 per page,依赖调试器附加,是临时后门。长期需开发高性能 Debug 解释器。

聊聊 MVI 的发展史和现代 Android 实践 | AndroidPub:本文探讨 MVI 架构模式的发展史和在 Android 开发中的实践。MVI 起源于 1979 年的 MVC 和 2014 年的 Flux,由 André Staltz 于 2014 年首次提出,强调单向数据流、不可变状态和 Intent 驱动用户交互。文章澄清常见误区:MVI 不等于 Redux(后者是集中式全局状态管理)或 MVVM(后者允许双向数据流),而是分布式状态管理,核心特征包括单一不可变状态模型、Intent 作为事件流统一处理,以及 ViewModel 通过 Reducer 更新状态。在 Android 实践中,建议使用 UiState、Intent 和 SideEffect 数据模型,ViewModel 负责处理 Intent 和状态转换。最终,作者强调 MVI 是灵活架构思想,非僵化模板,选型应基于团队协作和项目复杂度,简单场景可用 MVVM,复杂场景 MVI 可提升可预测性和维护性。

鸿蒙

鸿蒙流畅度优化-非活跃自定义组件冻结 | HarmonyDev:文章探讨鸿蒙系统中非活跃自定义组件(如不可见View)的状态变量修改仍驱动UI刷新,导致主线程负载过高的问题。对比Android仅在活跃时刷新,鸿蒙引入组件冻结优化方案:通过在Component声明添加freezeWhenInactive: true属性,冻结非活跃组件的刷新能力,状态变化不触发UI更新;当组件重新活跃时,系统自动执行延迟刷新。原理涉及编译时初始化冻结允许(initAllowComponentFreeze),运行时非活跃状态延迟通知(enableDelayedNotification),活跃状态标脏并响应Vsync刷新。实践建议通过AOP全局hook(如setActiveInternal)统一启用冻结,避免手动修改每个组件,提升复杂UI场景性能。

鸿蒙 KMP Compose 开发范式理解 | HarmonyDev:本文系统解析现代UI开发范式。首先对比命令式与声明式UI,指出声明式(如Compose/ArkUI)通过状态驱动自动更新UI,解决了命令式状态管理难题,已成主流趋势。其次分析主流框架,强调Jetpack Compose与鸿蒙ArkUI均采用声明式设计。重点探讨Compose中的架构模式:MVI通过严格单向数据流(Intent→State→UI)确保可预测性,是官方推荐范式;MVVM适用于简单场景但需注意状态纯度。实践部分揭示Compose仅响应状态变量整体赋值更新(需copy新对象),而鸿蒙支持深层字段修改。最后以计数器为例,展示MVI三层实现:View(Composable函数)、ViewModel(处理Intent更新State)、Intent(用户操作抽象)。全文突出声明式与MVI在跨平台开发中的优势。

AI

Google 的 AI 开发技术栈学习路径 | AndroidPub:Google在AI领域领先,提供全面的开发技术栈。基础模型包括Gemini家族(如Pro、Flash、Nano)和Gemma模型(多模态、多语言),支持设备端和云端应用。开发工具如Google AI Studio和Gemini API简化AI应用构建,支持自然语言处理和媒体生成。开发框架涵盖Keras用于模型微调、JAX用于大规模研究、Tunix用于后训练优化。基础设施基于XLA编译器和LLM-d项目,提升分布式计算效率。边缘计算通过Google AI Edge实现低延迟、隐私保护的设备端部署。未来展望包括AlphaEvolve编码代理、AI co-scientist科学助手和Gemini机器人模型,推动算法设计、医学研究和机器人控制。开发者可利用这些工具构建高效、创新的AI应用。



Google 开源一款终端 AI 编程助手:Gemini CLI

w5.jpg

Gemini CLI是一个开源命令行工具,将Gemini AI集成到终端,加速开发工作流。它支持查询和编辑大型代码库生成新应用、自动化任务(如处理GitHub问题或复杂rebase),并内置工具如Google搜索和媒体生成。

https://github.com/google-gemini/gemini-cli

开源 | MeiGen-MultiTalk:基于单张照片实现多人互动演绎 | 美团技术团队:美团开源音频驱动多人对话视频生成框架MultiTalk,首创L-RoPE绑定技术解决多音频流与人物错位难题。该框架采用DiT与3D VAE基础结构,通过两阶段训练(单人→多人)和局部参数更新策略,在保留复杂动作指令跟随能力的同时实现自适应动态人物定位。输入多人音频、参考图像及文本提示即可生成口型精准、肢体自然的交互视频,支持影视制作与直播电商等场景,性能指标超越现有方案。

w6.jpg

https://github.com/MeiGen-AI/MultiTalk/tree/main

本期结束,下期再见。历史周刊入口:
    Android×鸿蒙×AI 技术刊#第12期:Android 16新特性、Compose与Flutter对比、ART机制揭秘

    Android×AI 技术刊#第11期——都是Android技术文Android×鸿蒙×AI 技术刊#第10期——端侧AI · Kuikly性能 · Flow避坑 · 脱壳 · Dex解析...Android×鸿蒙×AI 技术刊#第9期 —— 一大波Dimina、uniapp、Taro、CMP跨端框架来袭...Android×鸿蒙×AI 周刊#第8期 —— 腾讯开源一码5端框架Kuikly、DeepWiki颠覆源码解读方式...Android×鸿蒙×AI 周刊#7:Android 16适配避坑|AI工具“扣子空间”实测|鸿蒙性能调优...Android×鸿蒙×AI 技术周刊#第6期:MCP协议重构AI生态,鸿蒙在争议中破局...Android×鸿蒙×AI 技术周刊 - 第5期Android×鸿蒙×AI 技术周刊 - 第4期Android×AI 技术周刊 - 第3期Android×AI×鸿蒙生态周刊#2|跨端开源Lynx/Kuikly + trae/ima/QwQ-32B/腾讯元器AI速递Android×鸿蒙×AI 技术周刊 - 第1期




扫一扫 关注我的公众号

如果你想要跟大家分享你的文章,欢迎投稿~

┏(^0^)┛每周见!
Die von den Nutzern eingestellten Information und Meinungen sind nicht eigene Informationen und Meinungen der DOLC GmbH.
您需要登录后才可以回帖 登录 | 注册 微信登录

本版积分规则

Archiver|手机版|AGB|Impressum|Datenschutzerklärung|萍聚社区-德国热线-德国实用信息网

GMT+2, 2025-8-2 22:52 , Processed in 0.142869 second(s), 31 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表