参考github上库:https://github.com/fennifith/Metronome-Android
学习过程中梳理的知识点 做下记录:
1、SoundPool
可用于播放短小铃声,比Mediaplayer更适合做这类需求
2、MetronomeService
作为一个service,实现Runnable;再通过handler的handler.postDelayed方式做平均触发;
触发时,作如下音播处理实现目标:(对同一铃声可通过音量实现高低音控制)
soundPool.play(soundId, 1, 1, 0, 0, isEmphasis ? 1.5f : 1);
3、Activity的onStart中做service绑定,在onDestroy和onHomePress中service的音播暂停及解绑更适合使用场景