我用AI辅助开发了一款广播应用,3周上线

0 阅读6分钟

我用AI辅助开发了一款广播应用,3周上线

先说个有趣的现象

最近在地铁上注意到一个变化——越来越多人戴着耳机,不是在刷短视频,而是在听广播。

不是那种传统的FM收音机,而是通过网络实时传输的数字广播信号。能听家乡的电台、能听交通广播,甚至能在深夜找到一档陪伴入睡的节目。

这让我萌生了一个想法:做一个简洁的、注重隐私的在线广播应用

于是我花3周时间,用AI辅助开发完成了随身FM。这篇文章想聊聊开发过程中的思考和实践。

为什么选择AI辅助开发?

说实话,这次开发我是有意尝试AI辅助编程的。

日常工作太忙,完整的时间很碎片化。我需要一种方式能让我在有限的时间里高效推进项目。AI编码工具恰好能帮我处理一些重复性工作,让我把精力放在核心逻辑上。

但我也清醒地知道:AI是辅助,不是替代

完全依赖AI生成代码,容易出现几个问题:

  • 代码风格不一致,后续维护困难

  • 对业务逻辑的理解可能存在偏差

  • 一些边界情况处理不够周全

所以我给自己的规则是:60%手动编写,40% AI辅助

具体怎么分工?

手动编写(60%)

这部分我坚持自己写,包括:

核心业务逻辑

  • 电台播放器的状态管理

  • 本地收藏数据的CRUD操作

  • 播放记录的数据持久化

  • UI与数据层的交互逻辑

这些是应用的核心,不能含糊。我倾向于用传统的编程方式,一行一行写清楚。

UI原型设计
在动手写代码之前,我先花了半天时间用 Google Stitch 绘制了UI原型。

Stitch的好处是上手快,能快速画出可交互的原型。把产品形态定清楚之后,开发时就不会反复改来改去浪费时间。

image.png

我设计的核心原则就一个:简单

没有花哨的动效,没有复杂的层级,用户打开App就能听广播。所以原型阶段就确定了三个核心页面:

  1. 播放页面 - 占据C位,展示当前电台信息

  2. 电台列表 - 按城市/类型分类

  3. 收藏管理 - 本地存储的收藏电台

AI辅助(40%)

AI主要帮我处理这几类工作:

模板化代码生成
比如数据类的Bean、列表适配器(Adapter)、工具类这些相对标准化的模块,让AI生成初版,我来审核调整。

注释与文档
给代码写注释是个细致活,让AI帮我补全大部分标准注释,我再根据实际情况调整。

调试辅助
遇到问题时,让AI帮忙分析可能的原因和排查思路。

辅助工具:Coze空间

这次开发我主要用的是 Coze的Coze空间 作为AI辅助编码工具。

选择它的原因很简单:

  • 上下文理解能力不错,能理解我的项目结构

  • 代码生成质量稳定,不会出现明显的幻觉

  • 支持多轮对话,方便迭代调整

不过再好的工具也需要会用。prompt要写清楚上下文和约束条件,生成的代码要仔细审核——这是使用AI辅助编程的基本功。

3周时间都花在哪儿了?

第一周:搭架子

  • 确定技术栈(Flutter + Java SpringBoot)

  • 用Stitch画完UI原型

  • 搭建项目结构(Flutter端 + SpringBoot服务端)

  • 实现核心播放功能

第一周是最累的,要把整个应用的骨架搭好。

第二周:填血肉

  • 完成电台列表和分类

  • 实现收藏功能

  • 开发播放历史功能

  • 打磨UI细节

这一周主要是功能开发,AI辅助主要在这个阶段发挥作用。

第三周:收尾优化

  • 定时关闭功能

  • 后台播放适配

  • 各机型兼容测试

  • 隐私政策和技术文档

三周时间不算长,但足够做一个功能完整、体验过关的应用。

关于产品的三个坚持

1. 界面干净

打开随身FM,没有任何开屏广告,没有任何弹窗,直接进入播放界面。

我在第一版设计时纠结了很久要不要加个"每日推荐"之类的功能。后来想通了:用户来这儿就是为了听广播,不要让其他东西打扰这个核心体验。

删掉。

2. 隐私优先

所有收藏数据存储在用户本地,不上传任何服务器。

坦白说,这个选择让我放弃了一些商业化的可能性。比如做用户画像、个性化推荐都需要数据。

但我始终觉得,一款广播应用不需要知道你喜欢什么电台。这个信息对用户体验没有任何增益,反而是对用户隐私的侵犯。

技术实现上也很简单:

  • 收藏数据用 SQLite 数据库存储在用户本地设备

  • 播放历史记录同样存在本地

  • 卸载应用,数据即清除

3. 资源全面

覆盖国内大部分电台,包括中央台、各省市台、交通广播、音乐台等。

数据源是公开的网络广播信号,我做了统一接入和分类,让用户能方便地找到自己想听的电台。

写在最后

随身FM的代码量不大,技术难度也不高,但它是我第一次系统性地尝试AI辅助开发。

60%手动 + 40% AI 的组合让我在3周内完成了从0到1的开发,整体效率比我预期的要快。AI工具帮我处理了很多繁琐的模板代码,我能把更多时间花在核心逻辑和产品体验上。

当然,AI辅助编程也有边界。核心业务逻辑、数据结构设计、架构决策这些,还是需要人来把关。

这次尝试让我意识到:善用AI不是依赖AI,而是找到适合自己的协作方式

如果你也在考虑用AI辅助开发,我的建议是:

  1. 先明确自己的边界,哪些要自己做,哪些交给AI

  2. 给AI清晰的上下文,生成的代码一定要审核

  3. 保持代码风格一致性,这关乎后续维护

最后,应用已经上架,官网:suishenfm.com

欢迎交流开发心得或产品建议。