一般的Android应用程序的音乐可以分为背景音乐和点击各种控件时的音效,前者一般为比较大的音乐文件,后者一般为比较小的音乐。在Android中一般用MediaPlayer类处理比较大的音频文件,用SoundPool类处理比较短促的音频文件。
因此,现设计一音乐播放工具类如下: MusicPlayer
在activity中怎样使用这个工具类呢?播放背景音乐可能我们一般都想到的是service,但是service对背景音乐的控制比较难,尤其是,在不同场景,需要不时变换背景音乐的情况下,因此,可以考虑自己定义一个activity,继承Activity,在其中定义一个静态的成员变量
- public static MusicPlayer musicPlayer;
并在这个Activity的onCreate方法中初始化该musicPlayer
- if(musicPlayer == null) {
- SysSetting.getInstance(getApplicationContext()).load(); //加载系统设置,SysSetting为我自己定义的一个类,由于代码较长,就不给出了
- musicPlayer = new MusicPlayer(getApplicationContext());
- musicPlayer.playBgSound(R.raw.welcome); //播放背景音乐
- }
然后,再将所有的Activity继承于这个自己定义的Activity即可。