终于忙完这一阵了,回归到日常的生活中,还有敲木鱼APP的一些开发过程分享
已经快离开博客一个月了,这一个月来闲暇时间一直都在忙敲木鱼app的开发,都没时间写博客了。
这篇文章就当是个这段时间的日记了。
被封了好多天
这些天反复隔离,公司被封了好几次,家里也被封了一个星期。每天吃方便面度日。有的时候很理解政策,但是还是期望能早些过去,恢复到正常的生活。不过现在形势越来越复杂,北京每天新增都好几百甚至上千。即使家里解封了,商超啥的很多都没有解封,还不让堂食。
突发的机会
最近电子木鱼很火,我用了一下广为流传的版本,感觉没啥技术含量,换音效竟然还要收12块钱。。。
本着能省则省原则,我决定自己写一个。(起因竟然是为了省12块)毕竟我也有交苹果开发者年费,这东西感觉一两天就能给搞定,不弄白不弄。
自己在体验了一下之后感觉非常不错(还是原生界面舒服,广为流传的版本那个界面我有点接受不了),然后就上架了。
没想到上架之后很多人都喜欢。
我发现我是个激励性人格,当我做的事情带来成绩激励我之后,我就会更投入。在上个星期我几乎都是每天晚上熬夜到三四点,就为了能优化功能,添加音效。从1.0到5.0也就不到一个多月吧。几乎每天都是一个新版本(不是水版本的那种,看更新日志也能看出来)
昨天半夜我将5.0提交上去了,我感觉功能性上已经没啥太大提升空间了,我觉得可以进入日常维护的阶段了(添加音效,修修bug)
可以回顾一下这几个星期挑灯夜战的结果:
1.0 正式上线
首发了八个音效,选择了我个人当时想到的8个声音,并配备了基础功能:自动敲击。
事实证明我对于需求的理解还是可以的,大多数敲木鱼的很多功能我都没有加,比如按照日期去计数等,我觉得人们更应该聚焦于音效本身,而不是数据上。直到现在也没人去提交一个按照日期去记录的需求。
其实对于大多数人而言,没必要像做任务一样记录每日的数据,只会拖累自己。
其实对于大多数人而言,敲木鱼的行为本身是个即兴行为,如果只做个单纯的木鱼声音app,可能就失去了乐趣,很容易玩腻。
所以我最开始对于应用的定义为:一个音效台。
大多数音效台都是服务于主播的,或者一些音乐盒只带了一个风格的音效(例如鸡音盒)。所以我的定位就是做一个面向大众的音效台。
这也是为什么除了木鱼等音效,还添加了「鸡哥」音效的原因。
我觉得敲木鱼能够备受喜爱,很大一部分原因在于初始的定位并不是一个佛家诵经的助手,而是一个给更多人带来快乐的玩具。
最开始的时候使用了这种大字风格,期望的就是吸引别人眼球。让人在app列表页面就能看到支持的功能。这也为应用起步阶段带来了可观的转化率。
2.0 摇晃检测
敲木鱼本身的触发方式是点击屏幕,但是人在三维世界中还是甩动手腕来敲木鱼的,几经研究后使用了摇晃检测的方法,监听传感器加速度变化来判断。并且搭配了「快板」音效后,我尝试了摇手机说快板,体验真的有趣。
事实证明这个摇晃检测并没有过多引起大家的喜欢,主要原因是因为我没研究过力学,对于传感器算法一无所知,摇动要求的角度比较苛刻,体验较差,经常无法摇动。虽然概念很好,但是体验层面上还是差点意思。
3.0 小组件
只坚持了两个版本,2.0系列就草草了事,因为新的大型功能推出了——桌面小组件。
因为我之前写「轻节食」的时候有小组件开发经验,但是我这次一做发现和曾经的一点都不一样了,Apple改了小组件逻辑,用了新的widgetkit,又是废寝忘食的研究好久,终于给搞了出来。
搞的过程中感谢「瓦力的码农生活」出的小组件教程,我当时看英文文档半天也没看出咋配置,他出的教程让我一下就轻松搞定了带有配置项的小组件怎么做。
在3.0上线之后,应用来到了巅峰——获得了Apple的编辑推荐。
我觉得这个应用在获得编推的时候,就太值得我开心了。
4.0 手表摇动
对于摇动这件事我一直在心里想着。直到我想在手表中实现摇动时,我就在想,不如将手机和手表的算法都重写了吧。借着这个机会,我恰好有一个力学硕士同学,在询问和请教后,终于实现了摇动手臂敲木鱼的方法。
之前摇动手机的时候,我想到了打快板的方式。那么摇动手表去干嘛呢?
有了!摇动手表开枪。
所以我添加了摇动手臂开枪的音效,实现指哪打哪。
这次搞完了之后,摇动手表与手机备受好评。
5.0 灵动岛
这个就是昨天熬夜给上架了的灵动岛支持。感觉适配起来还是有很多难点的,不过都一一克服了。当开启自动敲击之后会在锁屏的实时活动中和灵动岛都有显示。
随着软件功能越来越完善,接下来应该就是不断加音效和修bug了。我的生活也应该逐渐步入原本的轨道上来。这一个月的经历让我的开发能力也有了质的飞跃。相信未来可以给大家带来更多有趣的音效和功能。
我吹个牛,不论音效数量来看,就从设计、交互、功能来说,咱这算是音效台天花板了吧。
以后我也可以说,咱也是XXXAPP的开发者了。
博客和其他业务陆续恢复更新。
- 感谢你赐予我前进的力量