今天跟大家唠唠我搞“步非烟音频安卓”的那些事儿,绝对是血泪史,但总算是成了!
我寻思着找个能听步非烟音频的App,毕竟睡前听一听,挺放松的。结果在应用商店里搜搜,要么广告满天飞,要么就是各种乱七八糟的资源,根本没个靠谱的。
后来我琢磨着,干脆自己做一个得了!反正之前也瞎捣鼓过一些安卓App,心想这玩意儿应该不难。说干就干,先是找资源,这年头找点想要的资源真不容易,费了九牛二虎之力,总算七七八八凑了些音频文件。
小编温馨提醒:本站只提供游戏介绍,下载游戏推荐89游戏,89游戏提供真人恋爱/绅士游戏/3A单机游戏大全,点我立即前往》》》绅士游戏下载专区
然后就是选平台。- 我一开始打算用Android Studio,毕竟是官方的,资料也多。
- 结果,打开一看,那界面,那配置,直接把我劝退了。太复杂了!
- 后来我换成了比较轻量级的IDE,舒服多了,起码界面看着顺眼。
接下来就是吭哧吭哧地写代码。我先把界面给搭起来,弄了个简单的播放列表,能显示音频标题,能播放,能暂停。这部分还算顺利,毕竟之前有点底子。
遇到的第一个坑:音频播放
安卓的音频播放,坑是真的多!我一开始用了MediaPlayer,结果发现各种问题,有的音频格式不支持,有的播放起来卡顿,有的干脆就没声音。我对着文档,对着Stack Overflow,一点一点地debug,简直要崩溃了。
后来我换成了ExoPlayer。这玩意儿相对来说强大一些,支持的格式多,性能也但是,配置起来也麻烦,各种依赖库,各种参数,搞得我头昏脑胀。不过总算能正常播放了,虽然还有一些小bug,但起码能用了。
第二个坑:资源管理
我一开始把所有音频文件都放在App的assets目录里。结果,发现App体积太大了!而且每次加载播放列表都要好长时间。这肯定不行,用户体验太差了。
后来我琢磨着,能不能把音频文件放在服务器上,App只负责播放。这样App体积小,而且我可以随时更新资源。说干就干,我租了个服务器,把音频文件传上去,然后App通过网络请求来获取播放地址。
这又遇到了新的问题:网络请求。安卓的网络请求,也是坑!我一开始用了HttpURLConnection,结果发现各种超时,各种异常,搞得我焦头烂额。
后来我换成了OkHttp。这玩意儿相对来说简单一些,而且性能也但是,配置起来也麻烦,各种参数,各种回调,搞得我头昏脑胀。不过总算能正常请求了,虽然还有一些小bug,但起码能用了。
第三个坑:用户体验
App能用了,但是用户体验很差。界面简陋,操作不方便,功能也少。我琢磨着,得好好优化一下。
我参考了一些流行的音乐App,重新设计了界面,加了一些常用的功能,比如:
- 搜索
- 收藏
- 定时播放
- 睡眠模式
我还优化了播放逻辑,让App在后台也能继续播放。总算,App像模像样了,我自己用着也挺舒服的。
我把App打包成apk文件,安装到手机上。试用了一下,感觉还不错。虽然还有一些小bug,但起码能用了。哈哈,总算是搞定了!
整个过程,真的是一路踩坑,一路学习。虽然很辛苦,但是也很有成就感。以后有机会,再跟大家分享更多踩坑经验。