怎么在Android中通过服务实现一个音乐播放器

  介绍

本篇文章给大家分享的是有关怎么在Android中通过服务实现一个音乐播放器,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

这里将用到Android的四大组件之一:服务

注意:服务是自大组件之一,需要注册。

什么是服务?

1:“服务”意思即“服务”的意思,像Windows上面的服务一样,服务是在后台上运行,承担着静悄悄的不为人所注意的工作。

2:服务运行在后台,它是不可见的,无界面的程序。

3:服务可以在很多场合的应用中使用,比如播放多媒体的时候用户启动了其他活动,这个时候程序要在后台继续播放,比如检测SD卡上文件的变化,再或者在后台记录用户的地理信息位置的改变,或者启动一个服务来运行并一直监听某种动作等等。

下面是源码:

MainActivity

/* *   *大敌;这是一个服务生命周期及开启服务的小例子   ,*实现播放音乐功能   ,*/public  class  MainActivity  extends  AppCompatActivity  {/* *   *,才能规定开始音乐,暂停音乐,结束音乐的标志   ,*/,public  static  final  int  PLAT_MUSIC=1;   ,public  static  final  int  PAUSE_MUSIC=2;   ,public  static  final  int  STOP_MUSIC=3;   接收,private  MyBroadCastReceiver ;   ,@Override   ,protected  void  onCreate (Bundle  savedInstanceState), {   super.onCreate才能(savedInstanceState);   ,,setContentView (R.layout.activity_main);   接收机才能=new  MyBroadCastReceiver ();   IntentFilter 才能;过滤器=new  IntentFilter ();   filter.addAction才能(“com.complete");   registerReceiver才能(接收机、过滤);   ,}   ,public  void  onClick (View 视图){   switch 才能;(view.getId ()) {   ,,//开始音乐   ,,case  R.id.btn_startmusic:   ,,,playingmusic (PLAT_MUSIC);   ,,,休息;   ,,//暂停   ,,case  R.id.btn_pausemusic:   ,,,playingmusic (PAUSE_MUSIC);   ,,,休息;   ,,//停止   ,,case  R.id.btn_stopmusic:   ,,,playingmusic (STOP_MUSIC);   ,,,休息;   ,,}   ,}   ,private  void  playingmusic (int 类型),{//才能启动服务,播放音乐   Intent 才能;意图=new 意图(这个,PlayingMusicServices.class);   intent.putExtra才能(“type"、类型);   ,,startService(意图);   ,}   ,@Override   ,protected  void  onDestroy (), {   super.onDestroy才能();   unregisterReceiver才能(接收器);   ,}   }

MyBroadCastReceiver类(广播接收者):

/* *   *大敌;这是一个服务生命周期及开启服务的小例子   ,*实现播放音乐功能   ,*/public  class  MainActivity  extends  AppCompatActivity  {/* *   *,才能规定开始音乐,暂停音乐,结束音乐的标志   ,*/,public  static  final  int  PLAT_MUSIC=1;   ,public  static  final  int  PAUSE_MUSIC=2;   ,public  static  final  int  STOP_MUSIC=3;   接收,private  MyBroadCastReceiver ;   ,@Override   ,protected  void  onCreate (Bundle  savedInstanceState), {   super.onCreate才能(savedInstanceState);   ,,setContentView (R.layout.activity_main);      接收机才能=new  MyBroadCastReceiver ();   IntentFilter 才能;过滤器=new  IntentFilter ();   filter.addAction才能(“com.complete");   registerReceiver才能(接收机、过滤);   ,}   ,public  void  onClick (View 视图){   switch 才能;(view.getId ()) {   ,,//开始音乐   ,,case  R.id.btn_startmusic:   ,,,playingmusic (PLAT_MUSIC);   ,,,休息;   ,,//暂停   ,,case  R.id.btn_pausemusic:   ,,,playingmusic (PAUSE_MUSIC);   ,,,休息;   ,,//停止   ,,case  R.id.btn_stopmusic:   ,,,playingmusic (STOP_MUSIC);   ,,,休息;   ,,}   ,}   ,private  void  playingmusic (int 类型),{//才能启动服务,播放音乐   Intent 才能;意图=new 意图(这个,PlayingMusicServices.class);   intent.putExtra才能(“type"、类型);   ,,startService(意图);   ,}   ,@Override   ,protected  void  onDestroy (), {   super.onDestroy才能();   unregisterReceiver才能(接收器);   ,}   }

PlayingMusicServices类:

/* *   *大敌;这是一个Start 服务   ,*/public  class  PlayingMusicServices  extends  Service  {   ,//用于播放音乐等媒体资源   ,private  MediaPlayer 媒体播放器;   ,//标志判断播放歌曲是否是停止之后重新播放,还是继续播放   ,private  boolean  isStop=true;/* *   *,才能onBind,返回一个内部,可以与活动交互   *才能,这是Bind 服务的生命周期方法   *,才能@param 意图   *才能@return   ,*/,@Nullable   ,@Override   ,public  IBinder  onBind (Intent 意图),{   return 才能;零;   ,}   ,//在此方法中服务被创建   ,@Override   ,public  void  onCreate (), {   super.onCreate才能();   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null

怎么在Android中通过服务实现一个音乐播放器