`

音乐播放(游戏中的音效)

阅读更多
音乐播放(游戏中的音效)


游戏中是肯定和程序打包发布的。这样的音乐就没有放在Sdcard中,一般会放在应用目录下的“res/raw”下。那如何实现音乐播放呢?
其实很简单呐,我只不过把setDataSource()方法改成create()方法来指定资源索引的MediaPlayer对象。


package com.zzl.mediaplayer;

import android.app.Activity;
import android.media.MediaPlayer;
import android.media.MediaPlayer.OnCompletionListener;
import android.os.Bundle;
import android.view.KeyEvent;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.ImageButton;
import android.widget.TextView;

/**
 * 河北、衡水市、武强县 3月16日晚
 * zzl
 */
public class Mp32Activity extends Activity {
	/** Called when the activity is first created. */
	private TextView text = null;
	private ImageButton Start = null;
	private ImageButton Pause = null;
	private ImageButton Stop = null;
	private MediaPlayer mediaPlayer = null;
	private boolean isPlaying = false;
	private boolean isPaused = false;
	private boolean isReleased = false;

	@Override
	public void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.main);
		// 构建MediaPlayer对象
		mediaPlayer = new MediaPlayer();

		text = (TextView) findViewById(R.id.text);

		Start = (ImageButton) findViewById(R.id.Start);
		Start.setOnClickListener(new StartListener());

		Pause = (ImageButton) findViewById(R.id.Pause);
		Pause.setOnClickListener(new PauseListener());

		Stop = (ImageButton) findViewById(R.id.Stop);
		Stop.setOnClickListener(new StopListener());
	}

	// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	// 开始播放
	private class StartListener implements OnClickListener {
		public void onClick(View v) {
			if (!isPlaying) {

				mediaPlayer = MediaPlayer.create(Mp32Activity.this, R.raw.f4);
				mediaPlayer.setLooping(true);
				mediaPlayer.start();
				text.setText("音乐正在播放中......");
				isPlaying = true;
				isReleased = false;
				isPaused = false;
				mediaPlayer.setOnCompletionListener(new OnCompletionListener() {
					public void onCompletion(MediaPlayer mp) {
						mediaPlayer.release();
					}
				});
			}
		}
	}

	// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	// 暂停
	private class PauseListener implements OnClickListener {
		public void onClick(View v) {
			if (mediaPlayer != null) {
				if (!isReleased) {
					if (!isPaused) {
						mediaPlayer.pause();
						isPaused = true;
						isPlaying = true;
						text.setText("播放暂停中......");
					} else {
						mediaPlayer.start();
						isPaused = false;
						isPlaying = true;
						text.setText("播放重新播放......");
					}
				}
			}
		}
	}

	// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	// 停止
	private class StopListener implements OnClickListener {
		public void onClick(View v) {
			if (isPlaying) {
				if (!isReleased) {
					mediaPlayer.stop();
					mediaPlayer.release();
					isReleased = true;
				}
				isPlaying = false;
				text.setText("播放停止......");
			}
		}
	}

	// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	@Override
	public boolean onKeyDown(int keyCode, KeyEvent event) {
		if (keyCode == KeyEvent.KEYCODE_BACK) {
			if (!isReleased) {
				mediaPlayer.stop();
				mediaPlayer.release();
				isReleased = true;
			}
			this.finish();
			return true;
		}
		return super.onKeyDown(keyCode, event);
	}
}
分享到:
评论

相关推荐

    34款经典游戏音乐音效MIDI

    在IT领域,音频文件是多媒体应用中的重要组成部分,特别是对于游戏行业来说,音乐和音效的质量直接影响着玩家的游戏体验。本资源"34款经典游戏音乐音效MIDI"聚焦于游戏音频,提供了34个不同游戏的MIDI格式文件,这些...

    游戏音乐集合爆炸音效

    总的来说,这个“游戏音乐集合爆炸音效”资源包对于游戏开发者、音频设计师或者对游戏音效感兴趣的个人来说都是宝贵的资料。通过这些音效,可以提升游戏的动态感和互动性,让玩家体验更加丰富和生动。同时,它也反映...

    [原创]游戏音乐音效播放管理类, 可以控制播放背景音乐, 和战斗音效

    这篇原创博文主要探讨的是在游戏开发中如何管理和控制音频资源,特别是针对背景音乐和战斗音效的播放。在游戏开发中,音频管理是一个重要的部分,它可以提升玩家的沉浸感,对游戏体验起到关键作用。开发者通常会编写...

    Scratch少儿编程项目音效音乐素材-【游戏】音效-电脑游戏.zip

    总的来说,这个压缩包为使用Scratch进行游戏编程的孩子们提供了一套丰富的游戏音效素材,帮助他们更好地实现自己的创意,打造出更加生动有趣的游戏作品。通过实践和学习,孩子们不仅可以掌握编程技能,还能培养艺术...

    游戏音乐与音效处理_安卓源码.zip

    本资源“游戏音乐与音效处理_安卓源码.zip”提供了一个完整的Android应用源码示例,专门用于演示如何在游戏中集成和管理音频资源。以下是基于这个源码包中的关键知识点的详细解释: 1. **MediaPlayer类**:Android ...

    音乐音效封装类

    它利用Cocos2dx框架中的SimpleAudioEngine库,将音乐播放和音效处理的功能进行抽象和封装,以便于开发者更高效、更便捷地在项目中集成音频元素。 SimpleAudioEngine是Cocos2dx引擎的一部分,它提供了一种跨平台的...

    拳皇游戏音效(包含启动,KO音效).zip

    "拳皇游戏音效(包含启动,KO音效).zip"这个压缩包,正是一个专门为《拳皇》系列游戏定制的音效集合,包含了游戏中的重要声音元素——启动音效和KO音效。 首先,让我们来详细了解一下启动音效。启动音效通常是指...

    Android音乐、音效架包(可以简化游戏或者音乐播放器的开发)

    总的来说,Android的音乐、音效架包为开发者提供了强大的音频处理能力,无论是简单的游戏音效还是复杂的音乐播放需求,都能得到很好的满足。通过合理使用SoundPool和MediaPlayer,开发者可以大大提高开发效率,同时...

    Scratch少儿编程项目音效音乐素材-【游戏】音效-热血游戏.zip

    热血游戏音效通常包含战斗、胜利、失败、动作等各种场景的声音效果。例如,当角色成功击中目标时,一个激动人心的打击声效可以即时传达成就感;而当角色受伤或失败时,悲伤或紧张的音效则能表达挫败感。这些音效不仅...

    Android游戏设计之-------游戏音效的播放 SoundPool

    本篇文章将深入探讨如何使用SoundPool类来实现游戏音效的播放,让玩家在游戏过程中感受到更加生动和真实的声音效果。 SoundPool是Android系统提供的一种高效的声音播放工具,特别适合用于短小、循环或需要快速响应...

    Scratch少儿编程项目音效音乐素材-【游戏】音效-吃鸡音效.zip

    在这个“Scratch少儿编程项目音效音乐素材-【游戏】音效-吃鸡音效.zip”压缩包中,包含的是适用于Scratch游戏项目的一系列音效素材,特别是与流行游戏“吃鸡”相关的音频资源。 1. **少儿编程**:Scratch是教育孩子...

    Scratch少儿编程项目音效音乐素材-【游戏】音效-游戏音效2.zip

    这个压缩包“Scratch少儿编程项目音效音乐素材-【游戏】音效-游戏音效2.zip”显然是为了辅助少儿编程者在创建游戏项目时添加生动有趣的音效,从而提升游戏体验。 在Scratch中,音效和音乐是项目中的重要组成部分,...

    Scratch少儿编程项目音效音乐素材-【游戏】音效-俄罗斯方块音效4.zip

    总的来说,这个压缩包提供了一套完整的俄罗斯方块游戏音效,为使用Scratch的小开发者们提供了丰富的素材,使他们能够在构建自己的游戏项目时,增添专业且有趣的音效,提升游戏体验,同时也在实践中学习和锻炼编程...

    C#俄罗斯方块游戏源代码,带背景音乐和音效

    通过分析这个项目,我们可以了解到C#编程在游戏开发中的应用,以及如何实现游戏的基本功能和音效处理。 首先,我们看到项目文件中包含了`CSHARPTetris.sln`和`CSHARPTetris.suo`两个文件。`.sln`文件是Visual ...

    Scratch少儿编程项目音效音乐素材-【游戏】音效-东方风神录游戏音效.zip

    总的来说,Scratch少儿编程项目音效音乐素材提供了丰富的游戏音效资源,让孩子们能够在编程过程中享受到音乐和声音带来的乐趣,同时也能加深对编程原理的理解。通过实际操作,孩子们将学会如何利用这些素材,创作出...

    QQ音乐音效插件

    QQ音乐音效插件是一款专为PC用户设计的增强音乐体验的软件组件,它能够显著提升音乐播放的质量,让你在聆听音乐时感受到更加细腻、丰富的音效。这款插件不仅提供了预设的音效模式,如环绕声、重低音增强、人声清晰等...

    Scratch少儿编程项目音效音乐素材-【游戏】音效-超级玛丽-玩的背景音乐有开始吃金币顶蘑菇变大等.zip

    在Scratch编程中,音效和音乐是提升游戏体验的重要元素。"超级玛丽"作为经典的游戏,其音效深受玩家喜爱。本压缩包中的音频文件包含了"超级玛丽"游戏中的一些标志性音效,如开始游戏的声音、吃到金币的声音、顶蘑菇...

    Scratch少儿编程项目音效音乐素材-【游戏】音效-英雄联盟音效.zip

    在实际教学中,教师可以引导孩子们探索如何利用这些音效来增强游戏的氛围,例如,当角色完成特定任务时播放特定的音效,或者根据战斗状态播放激昂或紧张的音乐。此外,还可以教导他们如何调整音效的音量、速度和循环...

    Scratch少儿编程项目音效音乐素材-【游戏】音效-游戏娱乐.zip

    在本压缩包中,“游戏娱乐”文件夹很可能包含了各种类型的游戏音效,如: 1. 角色动作:行走、跳跃、攻击、受伤等声音。 2. 交互反馈:按钮点击、开关激活、物品拾取等。 3. 游戏事件:开始、暂停、结束、胜利、...

    Android游戏开发之音乐与音效的处理太鼓达人游戏原理

    在Android游戏开发中,音乐与音效的处理是至关重要的组成部分,它们为玩家带来沉浸式的游戏体验。本篇文章将深入探讨“太鼓达人”这类音乐节奏游戏的开发原理,通过雨松MOMO的专业讲解,我们可以了解到如何在Android...

Global site tag (gtag.js) - Google Analytics