回看自己去年的回顾,条理清晰,感情真挚,把平淡的一年写得还算有那么一点出彩。这让此刻的我有些无从下笔,更何况今年网站多了不少访客,感觉每个字都得仔细斟酌。
……
对我来说,今年似乎是很简单的一年,基本上只在为一件事而忙碌,那么这篇文章,就以这件事为主吧。
「音流」与我
今年做了一款 APP,名叫「音流」,主要功能是播放自己 NAS 里保存的音乐。
我把它发布到网上,陆续有人来我的网站并使用它。在这期间,不少人喊我大佬、大神之类的,但我知道自己什么水准,目前来说只能算是 API caller。
……
我从初二开始听歌,那时最常听许嵩的歌。我不是啥音乐发烧友,我听歌听的是歌词,是情绪,是隐藏在背后的故事。
那时候手机上最好用的本地播放器应该就是天天动听了吧,可惜后来无了。
大学时还妄想自己复刻一个安卓播放器出来,结果就因为测试的时候不兼容华为手机,最后不了了之,现在连代码都不知道丢哪了。
之后接触了 NAS,却唯独缺一个好用的音乐播放器,我想着等等吧,iOS 有了 DS Player,可惜界面并非我所期待的那样,订阅制也有点头大。安卓上发现了 sym,但买不了。
所以我就打算以现在的经验重新尝试一次多年前的想法,音流也就诞生了。
一场考试
之前的我,是一个写 Java 和 网页的 API caller,所以对客户端的开发完全是凭着热爱而来的。
因此,如果把我预想中音流要实现的功能比做一场考试的话,那我就是一个对知识一知半解的学生,肯定优先回答简单的问题,对于那些没有把握做对的题目,会选择性跳过,如果还有考试时间的话,再回过头去做。
这是我对目前音流存在的一些 bug 的看法,我看到 bug 我也想尽快消灭,非我不愿,实不能也。也许随着我客户端开发经验的加深,有些问题就会迎刃而解了。
接下来说说我预设的一些考题:
跨平台运行
除去大厂 APP,在音乐播放器这个类别下,每个平台都有一些比较好用的 APP,但能跨平台的我还没有发现。所以如果音流可以实现,那会是一个比较大的特色。
音流现在已经可以在 Android、iOS、macOS 上运行了,Windows 也只差临门一脚,那还剩下 TV 端和 Watch 端。
根据我所了解的情况,flutter 在 Android TV 上的实现相对会简单一些,单独为 TV 端准备一套界面就可以了,而 Apple TV 和 Watch OS 似乎都需要一些特殊手法,可行性还有待验证。
当然,仅能运行也不会是终点,还要深度适配每个系统的特性,如桌面小组件、快捷指令等,让音流更像一个原生应用。
曲库管理
用 NAS 的人,想必有很多人会不断收集新的歌曲,数量越大,越难以管理/整理。
虽然音流不打算做服务端,但还是想试试,在客户端,缺少必要的文件管理权限的情况下,能把曲库管理这个功能做到什么程度。
附加题
1、处理疑难杂症
这肯定是优先级最高的,它直接影响用户的使用体验。反正只要我能想到这些疑难杂症的解决办法,一定会第一时间处理。
目前最棘手的就是播放相关的问题,现在用的播放插件已经算是 flutter 平台最优秀的了,但依然存在不少问题,我想未来如果要彻底解决这些问题,要么等插件作者优化(大概率等不到),要么就只能弃用这些插件,自己在原生平台去实现了。
2、网盘支持
读取网盘或文件系统的文件,需要软件自身实现文件解析和数据整理的功能,这是目前音流所欠缺的。
有 NAS 的毕竟是少数,如果能支持网盘,想必能扩大音流的用户群体。
3、音效
虽然我不是什么音乐发烧友,但这样的人也不少,如果能实现音效调节、USB 独占这样的功能,也会是锦上添花的事。
流水账
今年上半年,基本在忙着辞职、开发音流这两件事上,下半年搬了个家,就继续投入开发中了。
11月底,音流在 App Store 正式上架了,命运的齿轮开始转动,我觉得还是源于在小众软件上发的那篇很不专业的推广文章,让我有了第一批用户。
拿现在的音流对比当时的音流,虽然界面没啥大的变化,但功能性和使用体验已经提升了很多(当然,现在也没有特别好),内部的代码结构更是改了一大半。
这一切都是在用户的反馈和我的不断思索中发展出来的,以我现在还不成熟的看法来说,想做软件,第一步是做出一个雏形,它不一定要有多么完善,只要能切中用户需求的痛点就行,第二步是获取用户,有了用户的反馈,你才能和自己的想法去比对,不断去调整未来的开发路线。
目前软件距离真正盈利还有不少的路要走,我也并不着急,毕竟软件确实存在一些基础性的 bug,用户用这个软件不骂我就谢天谢地了。
当然我也比较傲娇,可以骂,但要骂的话请不要让我看到,虽然看到我也会当作没看到……
把音流定位为买断制软件,一是自己作为用户讨厌订阅制,自己身为开发者就尽量不做此类尝试。二是对自己的作品有迷之自信,相信会不断吸引到用户付费使用。三是也没打算靠这个软件发什么大财,能当作主业最好,当不了还可以继续回大城市拧螺丝或者回老家种地去不是么(当一个真正的会敲代码的农民?)?
结语
音流这个 app,前期准备了快三个月时间,不断测试改进又花了五个月时间,现在它仍有瑕疵,且在未来很长一段时间内都会存在。
开发音流的决定是冲动的,但原因是纯粹的,因为我自己需要。
我也不知道自己哪来的勇气辞职去做 app 的,我也不知道自己哪来的勇气把这样一款有瑕疵的 app 拿出来收费的。我猜,这样的勇气应该来自于用户的称赞、鼓励与自发的宣传吧。
如果有用户在此期间(基础bug修复前)后悔购买了,可以尝试申请退款,如果流程到我这里,我肯定选择同意(目前我还不太清楚退款流程是什么样的)。
往好的方面去想,问题总有解决的办法,其他 app 能实现的,音流凭什么不能呢?只是在 bug 解决之前苦了用户了~
总之,如果没有什么不可抗力的情况发生,明年上半年的重心会放在跨平台功能的适配上,下半年则开始深挖疑难杂症,对症下药,希望能药到病除,音流能朝着我心目中完美的播放器更进一步。
评论区