要说能考的上清北的人,却不一定能考上这所大学。她虽然比考700左右上清北的人还差一截,但一百个清北的也不见得有一个能考上这空军航天大学的。这学校考高分...
2025-07-27 0
【CSDN 编者按】还在为维护老旧项目头疼?AI 或许是你的救星。本文作者是一位有多年 Android 开发经验的工程师,在离开原生开发多年之后,决定借助 Copilot 等 AI 开发工具,花两周时间将一个 7 年前的 Android 应用从头重写为现代架构版本。
原文链接:https://www.reddit.com/r/androiddev/comments/1lawxue/i_rewrote_my_7yearold_android_app_in_2_weeks_with/
作者 | bernaferrari 翻译 | 郑丽媛大约 7 年前,我发布了一个名为 SDK Monitor 的小工具应用,用来监控设备上安装的所有应用使用的 targetSDK API 级别。当时正值 Google 开始强制推行 targetSDK 最低版本限制(现在要求至少是去年的版本),于是我的原始应用很快就变旧了。随着时间的推移,我甚至已经无法再打开 Android Studio 去维护它了——开发环境和技术体系早已焕然一新。
趁着 GitHub Copilot 的“免费无限使用”即将结束之前,我决定冲一把:看看能否借助 AI,把这个老项目重写一遍。
(项目地址:https://github.com/bernaferrari/SDKMonitor)
AI 产品爆发,但你的痛点解决了吗?8.15-16 北京威斯汀·全球产品经理大 会 PM-Summit,3000+ AI 产品人社群已就位。
直面 AI 落地难题、拆解头部案例、对接精准资源!
进群后,您将有机会得到:
· 最新、最值得关注的 AI 产品资讯及大咖洞见
· 独家视频及文章解读 AGI 时代的产品方法论及实战经验
· 不定期赠送 AI 产品干货资料和秘籍
AI 驱动的开发流程
整个重写过程用了大约两周时间。
我一开始让 AI 把每个文件都进行“现代化”重写,例如将 MainViewModel 升级为 ModernMainViewModel。等所有文件都对应完成后,我就逐步删除旧代码并替换为新版本。
虽然整个过程也不完全轻松,但要是没有 AI 的帮助,这样的工作量几乎无法想象。我主要使用 Claude Sonnet 4,原因是它响应快、生成效果好;相比之下,Gemini 2.5 Pro 虽然质量不错,但速度慢,且几乎每一行代码都加注释,显得有些冗余。
在重写过程中,我发现了很有意思的一点:早在 2018 年,Google 的 API 就在不断废弃,今天这种趋势依旧;可当年刚推出的库如 Room 和 WorkManager,现在不仅依然存在,而且还支持良好。
大模型偶尔会导入错误的库,或者忘记给图标加上 autoMirrored 属性,但总体来说,大模型基本很少再使用旧 API 或不推荐使用的 API 了。
Jetpack Compose 的发布时间点也恰到好处——既不太早(不会到处都是过时内容),也不太新(大部分 LLM 目前对像 shadcn/ui 这样的东西还比较陌生)。相比过去需要引入大量第三方库,现在除了 Google 自家的库外,我只手动引入了少数几个,比如 Coil 图像加载库。
我的开发工作流比较独特:我一边用 VS Code 与 AI 快速交互(主要用“编辑模式”迭代代码),一边用 Android Studio 写代码和调试——毕竟 VS Code 至今还没有 Kotlin 的语言服务器支持。
那么,AI 重写过后的 SDK Monitor 2.0 有哪些变化?
可以说,这是一个彻底重写的全新版本。我专注于用最新的技术,打造一个简洁、高效、实用的 App,主要亮点包括:
100% Kotlin 编写,完全采用 Jetpack Compose + Material 3 Expressive 设计语言(虽然该套件仍处于 Alpha 阶段,但我尽可能实践了其中的设计理念)。
支持动态主题切换,兼容手机、平板和折叠屏(受到 Grok App 的启发)。
新增视觉化图表,可展示 SDK 版本分布和近期应用更新情况。
自定义快速滚动条,可按首字母或 SDK 版本快速定位应用(灵感来源于 Niagara Launcher)。
支持多种语言,包括葡萄牙语、意大利语、法语、德语、日语、中文和西班牙语,由 AI 翻译完成。
为了让 AI 更好地理解上下文,我还对项目结构做了些调整,把相关的 ViewModel、界面组件等文件统一放进同一个目录(这种结构在 Web 开发中更常见)。这样我只需拖一个文件夹到 AI 的上下文窗口,它就能理解所有依赖关系。
一点个人感想
我知道,这个应用的用途非常小众,可能对大多数人都没什么帮助。不过自 2018 年以来,还是有一些用户持续使用这个工具并积极反馈 bug。
如果你觉得“这个项目挺有意思,但不适合我”,我也完全理解,毕竟我也从未将它发布到 Play Store上。一方面是因为它需要查询所有已安装应用,另一方面,是因为它本身就不是面向大众的 App。
但这个应用其实还有一个“隐藏功能”:它可以作为一个很棒的 App 模板:项目规模适中、不依赖于网络、便于定制。你可以 Fork 它,然后在此基础上构建全新的项目。无论是 ViewModel 架构、Hilt 依赖注入,还是 Jetpack 组件的广泛使用,都能为你节省不少时间——要知道, 目前Google连个官方的 WorkManager 示例模板都没有。
说实话,我早就不是 Android 开发者了——先转向了 Flutter,后面又跳进了 Web 开发。不过,这次重写项目的过程非常有趣,也让我重新燃起了对老项目的热情。
最后,我希望这篇文章能启发你,去重拾曾经的老项目、用 AI 更快地启动新项目,或者也可以干脆 Fork 我的项目,打造一个全新的产品。
📢 2025 全球产品经理大会
8 月 15–16 日
北京·威斯汀酒店
2025 全球产品经理大会将汇聚互联网大厂、AI 创业公司、ToB/ToC 实战一线的产品人,围绕产品设计、用户体验、增长运营、智能落地等核心议题,展开 12 大专题分享,洞察趋势、拆解路径、对话未来。
更多详情与报名,请扫码下方二维码。
相关文章
要说能考的上清北的人,却不一定能考上这所大学。她虽然比考700左右上清北的人还差一截,但一百个清北的也不见得有一个能考上这空军航天大学的。这学校考高分...
2025-07-27 0
通信历史连载830-世界第一部卫星+移动双模手机到底是谁-2000年2000年:摩托罗拉推出9505a手机卫星电话,这是全球第一部手机卫星电话。不过这...
2025-07-27 0
GMI Cloud 推出“ AI 应用构建成本计算器”,精准破解AI应用海外市场落地难题当全球 AI 应用开发者将目光投向海外市场时,“商业化成本高”...
2025-07-27 0
随着人工智能技术的飞速发展,我们正迎来智能体的第二波浪潮。这些新一代的智能体,由大型语言模型(LLM)驱动,不仅在理解力和自主性上远超早期的语音助手如...
2025-07-27 0
最近,正值暑假出游高峰期很多人都有乘高铁出行的需求有网友发帖称发现列车上有不少乘客自带一次性座套有网友评论称,暑期气温较高,人们穿着清凉,怕被其他人...
2025-07-27 0
随着新能源汽车的发展,智能座舱成为一个非常重要的核心功能了,因为它控制着车内的娱乐体系,以及相关的一些控制功能,甚至包括语音控制等、屏幕显示等等。而智...
2025-07-27 0
PlayStation宣布在最新测试版固件更新中加入多项新功能,包括通过降低游戏性能实现节能的选项。 PlayStation表示这一举措是公司长期环保...
2025-07-27 0
子系品牌下半年会“彻底疯狂”,各个都想冲击高端挑战老大哥,根据目前爆料的情况来看,红米这次的新机k90 pro很有可能吊打小米16了,不光有2k屏+超...
2025-07-27 0
发表评论