`
chen592969029
  • 浏览: 110249 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

播放背景音乐,Service的简单应用

阅读更多
首先创建自己的Service处理类
MyService

public class MyService extends Service {
	private MediaPlayer mp;

	@Override
	public void onStart(Intent intent, int startId) {
		// TODO Auto-generated method stub
		//开始播放音乐
		mp.start();
		//音乐播放完毕的事件处理
		mp.setOnCompletionListener(new MediaPlayer.OnCompletionListener()         {
			
			public void onCompletion(MediaPlayer mp) {
				// TODO Auto-generated method stub
                                //循环播放
				try {
					mp.start();
				} catch (IllegalStateException e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				}
			}
		});
		//播放音乐时发生错误的事件处理
		mp.setOnErrorListener(new MediaPlayer.OnErrorListener() {
			
			public boolean onError(MediaPlayer mp, int what, int extra) {
				// TODO Auto-generated method stub
				//释放资源
				try {
					mp.release();
				} catch (Exception e) {
					e.printStackTrace();
				}
				
				return false;
			}
		});
		
		super.onStart(intent, startId);
	}

	@Override
	public void onCreate() {
		// TODO Auto-generated method stub
                //初始化音乐资源
		try {
                        //创建MediaPlayer对象
			mp = new MediaPlayer();
                        //将音乐以Import的方式保存在res/raw/zhou.mp3
			mp = MediaPlayer.create(MyService.this, R.raw.zhou);
                        //在MediaPlayer取得播放资源与stop()之后要准备PlayBack的状            态前一定要使用MediaPlayer.prepeare()
			mp.prepare();
		} catch (IllegalStateException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		
		super.onCreate();
	}

	@Override
	public void onDestroy() {
		// TODO Auto-generated method stub
		//服务停止时停止播放音乐并释放资源
		mp.stop();
		mp.release();
		
		super.onDestroy();
	}

	@Override
	public IBinder onBind(Intent intent) {
		// TODO Auto-generated method stub
		return null;
	}

}


然后在需要播放背景音乐的Activity的onCreate()方法中加入如下代码
Intent intent = new Intent(MyAcitivity.this,Myservice.class);
startService(intent);


在其onStop()方法中加入如下代码
Intent intent = new Intent(MyActivity.this,MyService.class);
stopService(intent);


最后在AndroidManifest.xml中做如下配置
<service
			android:name=".MyService"
			android:exported="true"
			android:process=":remote">
</service>
分享到:
评论

相关推荐

    Android通过startService播放背景音乐

    总结来说,这个简单的示例展示了如何使用 `startService` 在Android中实现后台播放背景音乐。通过Service,我们可以确保即使用户离开应用程序,音乐也能继续播放。同时,Service的生命周期管理确保了资源的有效利用...

    带背景音乐的图片浏览器

    这个应用的核心目标是提供一个集图片查看与音乐播放于一体的体验,让用户在浏览图片的同时能够享受背景音乐。以下是对这个项目涉及的技术点、可能的实现方式以及未来发展方向的详细分析。 首先,我们需要关注的是...

    Android通过Service实现简单的音乐播放

    android音乐播放效果,简单的服务开启。 这里将用到android的四大组件之一:Service 注意:Service是自大组件之一,需要注册。 什么是服务? 1:“Service” 意思即“服务”的意思, 像 Windows 上面的服务...

    豆瓣音乐电台-一个简单的音乐播放电台

    "豆瓣音乐电台-一个简单的音乐播放电台" 这个标题揭示了我们讨论的主题是一款基于豆瓣平台的音乐播放应用,专注于提供电台式的音乐体验。它以简洁易用为特点,允许用户轻松享受音乐,而无需复杂的操作。 【描述详解...

    基于AndroidStudio开发的简单音乐播放器+详细注释源码.zip

    在本项目中,我们探讨的是一个基于Android Studio开发的简单音乐播放器应用。这个应用是为初学者或者毕业设计的学生准备的,它包含了完整的源代码并带有详细的注释,使得学习者可以清晰地理解每个功能的实现过程。...

    Android源码——简易音乐播放器源码.zip

    - **MusicService**:可能创建了一个Service来处理音乐播放,即使用户离开应用程序,音乐仍能在后台继续播放。 8. **通知栏控制**: - **Notification**:为了在通知栏提供音乐控制,可能创建了Notification,并...

    html5带音乐背景的圣诞节倒计时页面特效.zip_Christmas Countdown_christmas_countdow

    在这个倒计时页面中,开发者可能使用了`&lt;audio&gt;`标签,并通过`src`属性指定音乐文件的路径,使背景音乐能够在页面加载时自动播放。此外,还可以通过`controls`属性添加播放、暂停和音量控制等用户界面。 接着,CSS3...

    Android 声音播放,代码特别简单

    在Android平台上,声音播放是一个常见的需求,无论是游戏中的背景音乐,还是应用内的提示音,都需要用到音频播放功能。本文将详细介绍如何通过简单的代码实现这一功能。我们将关注两个关键类:`MediaPlayer`和`...

    简易android音乐播放器.doc

    在本项目中,我们创建了一个简单的Android音乐播放器应用程序,主要目标是实现基本的音乐播放功能,包括播放列表的展示、歌曲的切换、播放控制以及音量调节等。以下是这个项目涉及的一些关键知识点: 1. **布局设计...

    MP3播放器v1.0

    3. **循环播放**:用户可以选择循环播放模式,使得单曲或整个播放列表可以重复播放,非常适合用来听喜欢的歌曲或者学习语言时作为背景音乐。 4. **后台服务**:应用利用Android系统的Service组件,使得音乐可以在...

    android service 重启

    1. **Service概述**:Service是Android四大组件之一,可以在后台长时间运行,执行一些耗时操作,如下载文件、播放音乐等。 2. **重启机制**: - **START_STICKY**:表示服务被杀死后,系统会自动重启该服务,但不会...

    基于android音乐播放程序的开发.pdf

    从文档内容来看,首先会介绍音乐播放器程序的开发背景、意义以及研究目标,然后深入讲解系统可行性、系统功能,并对音乐播放器界面友好、操作简单的特性进行分析。此外,文档还会详细介绍系统运行环境和具体实施过程...

    基于android的音乐播放器源码

    此外,对于背景播放功能,源码可能会展示如何将服务(Service)与Activity相结合,使音乐在后台持续播放,即使用户离开应用程序也能保持播放状态。 至于视频播放,Android的VideoView或者ExoPlayer库可能被用到。...

    Android大作业:模仿了wechat界面;用户登录;音乐播放等

    在本项目中,开发者以Android平台为背景,完成了一个大作业,主要目标是模仿微信的界面设计,并实现了一些核心功能,如用户登录、音乐播放以及简单的消息展示。下面将详细阐述这些知识点。 首先,关于“Android ...

    Android中的多媒体技术应用开发与研究.pdf

    开发者可以创建一个Service,然后在其中实现媒体播放逻辑,即使用户离开应用,音乐也可以继续播放。 Broadcast Receiver则允许应用程序响应系统广播事件,比如系统音量改变、电池状态更新等,这在多媒体应用中也很...

    千峰android音乐播放器app

    此外,对于背景播放,需要利用Service来保持音乐播放不因Activity的销毁而中断。 其次,保存喜欢的音乐功能通常涉及到数据库的运用。Android内置了SQLite数据库,开发者需要创建数据库表结构,用于存储用户喜欢的...

    Android代码-简单的音乐播放器

    【Android代码-简单的音乐播放器】项目是一个基于Android平台的音乐播放应用实例,旨在帮助开发者了解如何在Android环境中实现一个基本的音乐播放功能。在这个项目中,我们可以学习到以下几个核心知识点: 1. **...

    android开发音乐盒的实验报告.pdf

    在这种情况下,Service将负责在用户离开应用界面后继续播放音乐。 - **BroadcastReceiver组件**:用于接收系统广播事件,例如系统启动、网络状态变化等。在这里,BroadcastReceiver可能用于监听音乐播放的状态改变...

    最新简易android音乐播放器.doc

    高级的音乐播放器可能会使用服务(Service)在后台持续播放音乐,即使用户离开应用程序。此外,为了在通知栏显示控制选项,还需要了解如何创建和管理`Notification`。 7. **音频焦点管理**: 在Android中,当多个...

    简单易用的play

    在Android应用开发中,音乐播放是常见的需求,用户可以通过这样的功能来享受音乐或者配合应用的功能背景播放。 【描述】"简单易用的android------playing,可在项目中使用" 提示我们这是一个面向开发者的设计,它的...

Global site tag (gtag.js) - Google Analytics